我已经在这几天了,已经问了很多消息来源,但仍然无法找到如何做到这一点。 我已经在这里和那里看到了一些代码,但我还没有看到一个有效的实现。
<fieldset id="question">
<legend>Which are fruit?</legend>
<label><INPUT TYPE="checkbox" NAME="q1" VALUE="wrong">tomatoes<BR></label>
<label><INPUT TYPE="checkbox" NAME="q2" VALUE="wrong">cucumber<BR></label>
<label><INPUT TYPE="checkbox" NAME="q3" VALUE="right">apples<BR></label>
<label><INPUT TYPE="checkbox" NAME="q4" VALUE="wrong">onion<BR></label>
<label><INPUT TYPE="checkbox" NAME="q5" VALUE="right">bananas<BR></label>
</fieldset>
<input type="button" id="answer">
我想我以前可能会把我的问题弄得很糟糕,并会再试一次,我真的非常绝望。
在提交时,如果所有复选框都带有值&#39; right&#39;已选中,所有复选框的值均为“错误”。没有检查,我想展示一个做得好的&#39;警报信息。
有人可以帮忙解决这个问题。
我在想它应该是这样的:
If (all checkboxes with value 'right' = checked) and (all checkboxes with value 'wrong' are unchecked) {
do something}
谢谢!
答案 0 :(得分:2)
您可以使用:
if($('[value=right]:checked').length==3 && $('[value=wrong]:not(:checked)').length==2)
//show message well done.....
如果您没有带有值的复选框的计数:
if($('[value=right]:checked').length==$('[value=right]').length && $('[value=wrong]:not(:checked)').length==$('[value=wrong]').length)
//show message well done.....
答案 1 :(得分:2)
您可以判断是否有任何选中的复选框的值为“错误”,如下所示:
var wrongChecked = $("input:checkbox:checked[value='wrong']").length != 0;
同样,您可以选中未选中的复选框:
var rightUnchecked = $("input:checkbox[value='right']").not(":checked").length != 0;
如果这两个变量中的任何一个结束true
,则复选框的状态是错误的。如果它们都是false
,那就是正确的:
if (!wrongChecked && !rightUnchecked) {
// yaay! correct answer!
}