Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   спрятать/показать поле ввода при нажатии на checkbox (https://javascript.ru/forum/dom-window/8759-spryatat-pokazat-pole-vvoda-pri-nazhatii-na-checkbox.html)

g1r 11.04.2010 19:01

спрятать/показать поле ввода при нажатии на checkbox
 
Ребят, подкскажите пожалуйста код скрипта, который бы при нажатии на поле формы типа checkbox, скрывал/показывал поле типа text в зависимости от состояния checkbox? (когда checkbox нажат поле ввода появляется и наоборот).

Заранее спасибо!

parzh-junior 11.04.2010 19:16

Попробуй к checkbox добавить 'onClick'
<input type=checkbox onClick="hideOrShowText()">

...и сделай скрипт (с названием hideOrShowText), который бы показывал/скрывал текст.
Я всегда делаю так. Это не очень профессионально, но всё-же, всё-же...

g1r 11.04.2010 19:27

Спасибо!

Вот мой вариант

<body>

<script type="text/javascript">

function showMe (box) {
var vis = (box.checked) ? "block" : "none";
document.getElementById('div1').style.display = vis;
}

</script>


show/hide: <input type="checkbox" name="multi_note" value="1" onclick="showMe(this)">


<div id="div1" style="display:block; display:none;">
<input type=text>
</div>

</body>

g1r 11.04.2010 19:44

Всем спасибо! Кому нужно - пользуйтесь на здоровье!

Gozar 11.04.2010 20:05

Цитата:

Сообщение от g1r (Сообщение 51179)
Всем спасибо! Кому нужно - пользуйтесь на здоровье!

никому не нужно, для того чтобы делать так мало, не нужно так много кода.

Gozar 11.04.2010 20:08

все можно было и в onclick запихнуть

Aetae 11.04.2010 21:12

..т.е примерно так:
<input type="checkbox" checked="checked" onclick="this.nextSibling.style.display=this.checked?'':'none';"><input type="text">


Ничего, понимание должно придти, вы по крайней мере сделали всё сам, что уже гуд.)

P.S. А ещё лучше, чтоб проблем с вёрсткой не было, использовать visibility:hidden;

Kolyaj 11.04.2010 22:17

Цитата:

Сообщение от Aetae
P.S. А ещё лучше, чтоб проблем с вёрсткой не было, использовать visibility:hidden;

Тут уж по ситуации, смотря что нужно.

zerojava 29.05.2011 14:51

Подскажите пожалуйста а как сделать так чтобы при снятии галочки с чекбокса значения элементов ввода не просто скрывались в невидимом <div> но и еще обнулялись или блокировались?

trikadin 30.05.2011 01:40

Это просто вариант господина Aetae, но с добавлениями. Мне кажется, это было очевидно...

<input type="checkbox" checked="checked" onclick="if(this.checked){this.nextSibling.style.display=''}else {this.nextSibling.style.display='none';  this.nextSibling.value='';}"><input type="text">


Часовой пояс GMT +3, время: 13:26.