<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" placeholder="Название турнира"> как в этом коде зделать штобы галочка изночально не стояла а при постановке галочки поевлялось поле |
<input type="checkbox" onclick="if(this.checked){document.getElementById('nextSibling').style.display='inline-block'}else {document.getElementById('nextSibling').style.display='none'; document.getElementById('nextSibling').value='';}"> <input type="text" placeholder="Название турнира" style="display: none;" id="nextSibling"> |
Цитата:
|
;) Не за что, я бы сделал отдельную функцию как описывалось ранее, и onclick бы выполнял функцию. Но это уже дело привычки, как кому удобно.
|
Fatal error: Smarty error: [in W:\html\home-cs.lc\www/plugins/clans/templates/skin/default/actions/ActionClans/wars_create.tpl line 45]: syntax error: unrecognized tag: document.getElementById('nextSibling').style.display='inline-block' (Smarty_Compiler.class.php, line 446) in W:\html\home-cs.lc\www\engine\lib\external\Smarty-2.6.19\libs\Smarty.class.php on line 1092мне вот такую ошибку выдает при открывании станицы с данным кодом на этот код <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" placeholder="Название турнира"> он не ругался вабше |
а все поченил сам =)
|
А подскажите, плз, как сделать так, чтобы когда чекбокснул - скрывалось (открывалось) не одно поле, а несколько...
|
BLP, засуньте эти несколько полей в span или div и скрывайте (открывайте) уже его...
|
Я уже сделал... Не знаю, насколько ЭТО красиво, может можно было проще.... Просто перечислил все поля в вышеприведенном здесь коде и всё работает:
<input type="checkbox" onclick="if(this.checked){document.getElementById('Sex').style.display='none'; document.getElementById('PB2001').style.display='none'; document.getElementById('PN2001').style.display='none'; document.getElementById('PB').style.display='none'; document.getElementById('PN').style.display='none'; document.getElementById('dd').style.display='none'; document.getElementById('mm').style.display='none'; document.getElementById('yy').style.display='none'; } else {document.getElementById('Sex').style.display='inline-block'; document.getElementById('PB2001').style.display='inline-block'; document.getElementById('PN2001').style.display='inline-block'; document.getElementById('PB').style.display='inline-block'; document.getElementById('PN').style.display='inline-block'; document.getElementById('dd').style.display='inline-block'; document.getElementById('mm').style.display='inline-block'; document.getElementById('yy').style.display='inline-block'; } " /> У меня идет проверка через js файл на предмет, заполнено поле или нет... вот так (часть кода) : if (document.entry_form.PB2001.value == "?") { utils.addClassName(f34, 'error'); } else { utils.addClassName(f34, 'ok'); } Теперь мне надо сделать здесь, чтобы была проверка на Чекбокс... т.е. если Чекбокс отмечен, то ничего не происходит, а если нет, то выполняется этот код... т.е. форма не отправляется, пока данное поле не будет заполнено... Пока не понадобился чекбокс все работает и проверяется... |
BLP,
<html> <head> <script> function func() { if (document.getElementById("cbx").checked) { if (document.getElementById("txt1").value == "" || document.getElementById("txt2").value == "") { return alert("незаполнено"); } document.getElementById("form").submit(); } else { document.getElementById("form").submit(); } } </script> </head> <body> <form action="http://javascript.ru" id="form"> <input type="checkbox" id="cbx" onClick="this.checked ? document.getElementById('div').style.display='block' : document.getElementById('div').style.display='none'"> <div style="display:none;" id="div"> <textarea id="txt1"></textarea><textarea id="txt2"></textarea> </div> <input type="button" value="Отправить" onClick="func()"> </form> </body> </html> |
Часовой пояс GMT +3, время: 18:10. |