<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, время: 01:08. |