Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Как сделать активным checkbox


Автор: savmp 16.3.2012, 16:34
Здравствуйте!

Есть форма в которой 4 checkbox

Как решить непростую задачку?

как сделать так, чтобы по умолчанию <input type='checkbox' name='FORM_C' value='003'  /> был включён

а теперь самое главное...

Как сделать так чтобы пользователь мог сделать все checkbox активными.
А если он начинал делать НЕ активными то 1 checkbox всегда оставался активным.

Любой 1 из 4 checkbox всегда оставался активным

<form action='' method='POST'>

<input type='checkbox' name='FORM_A' value='001'  />
<input type='checkbox' name='FORM_B' value='002'  />
<input type='checkbox' name='FORM_C' value='003'  />
<input type='checkbox' name='FORM_D' value='004'  />


<input type='submit' value='Поиск'>
</form>

Спасибо!

Автор: Pretorian 16.3.2012, 16:46
Цитата(savmp @  16.3.2012,  18:34 Найти цитируемый пост)
как сделать так, чтобы по умолчанию <input type='checkbox' name='FORM_C' value='003'  /> был включён

<input type='checkbox' name='FORM_C' value='003' checked />

Цитата(savmp @  16.3.2012,  18:34 Найти цитируемый пост)
А если он начинал делать НЕ активными то 1 checkbox всегда оставался активным.

<input type='checkbox' name='FORM_C' value='003' onclick="return false" />

Автор: savmp 16.3.2012, 17:05
Цитата(Pretorian @ 16.3.2012,  16:46)
Цитата(savmp @  16.3.2012,  18:34 Найти цитируемый пост)
как сделать так, чтобы по умолчанию <input type='checkbox' name='FORM_C' value='003'  /> был включён

<input type='checkbox' name='FORM_C' value='003' checked />

Цитата(savmp @  16.3.2012,  18:34 Найти цитируемый пост)
А если он начинал делать НЕ активными то 1 checkbox всегда оставался активным.

<input type='checkbox' name='FORM_C' value='003' onclick="return false" />

НЕ!)))  один из 4 как минимум должен остаться активным.

То есть при первой загрузке формы <input type='checkbox' name='FORM_C' value='003'  />
активный....

затем пользователь может наклацать что ему угодно... но если он начнёт снимать галочки... то 1 любой должен остаться активным

Автор: iff 17.3.2012, 16:15
Код

<html>
<head>
<script type="text/javascript">
var OptionChecks = [];
window.onload = function() {
    OptionChecks = [frmMain.chckA, frmMain.chckB, frmMain.chckC, frmMain.chckD];
    for (var i = 0; i < OptionChecks.length; i++)
        OptionChecks[i].onclick = function() {
            if (this.checked)
                return true;
            else {
                var c = 0;
                for (var i = 0; i < OptionChecks.length; i++)
                    if (OptionChecks[i].checked) c++;
                c++;
                return (c > 1);
            };
        };
};
</script>
</head>
<body>
<form name="frmMain">
<noscript>
 <b>Внимание!</b> Выберите <b><u>один или несколько</u></b> вариантов!<br>
</noscript>
<input type="checkbox" name="chckA" value="001" checked> 1<br>
<input type="checkbox" name="chckB" value="002"> 2<br>
<input type="checkbox" name="chckC" value="003"> 3<br>
<input type="checkbox" name="chckD" value="004"> 4
</form>
</body>
</html>

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)