Javascript 验证8个正确/错误复选框或复选框中的2个
我的表格有4个正确/错误的问题,需要1个正确选择和1个错误选择,总共2个选择才有效。可接受的方案如下:Javascript 验证8个正确/错误复选框或复选框中的2个,javascript,jquery,html,Javascript,Jquery,Html,我的表格有4个正确/错误的问题,需要1个正确选择和1个错误选择,总共2个选择才有效。可接受的方案如下: □ 对-□ 错误 ☒ 对-□ 错误 □ 真的-□ 错误 □ 对-☒ 错误 或 □ 对-☒ 错误 □ 对-□ 错误 □ 对-□ 错误 ☒ 对-□ 错误 逻辑: 必须只有1个正确答案和1个错误答案(总共2个答案) 不可能有超过1个假答案和1个真答案 对于相同的问题,不可能有1个正确答案和1个错误答案 当满足所有这些规则时,返回true 在最后一个示例的形式中: □ 对-☒ 错误 □ 对-□ 错误
□ 对-□ 错误
☒ 对-□ 错误
□ 真的-□ 错误
□ 对-☒ 错误
□ 对-☒ 错误
□ 对-□ 错误
□ 对-□ 错误
☒ 对-□ 错误
- 必须只有1个正确答案和1个错误答案(总共2个答案)
- 不可能有超过1个假答案和1个真答案
- 对于相同的问题,不可能有1个正确答案和1个错误答案
- 当满足所有这些规则时,返回true
- 在最后一个示例的形式中:
□ 对-☒ 错误
□ 对-□ 错误
□ 对-□ 错误
☒ 对-□ 错误
如果在问题1上单击“true”,则会出现以下情况 发生:
☒ 对-□ 错误
□ 对-□ 错误
□ 对-□ 错误
□ 对-□ 错误
(一)
(二)
(三)
(四)
表单需要在每次单击事件上验证(即自动更新)。您可以使用:
$('input:checkbox').change(function(){
if($('input:first-child:checked').length==1){
var firstcheckedelementindex=$('input:first-child').index($('input:first-child:checked'));
var secondcheckedelementindex=$('input:nth-child(2)').filter(function(){
return this.checked;
}).length;
return( secondcheckedelementindex==1 && $('input:nth-child(2)').not(':eq('+firstcheckedelementindex+')').is(':checked'))
}else{
return false;
}});
如果您可以共享html,那就太好了。我会使用单选按钮而不是复选框。这样,你的第三条规则一直都是有效的。你试过了吗,或者你想要一个熟食。在此处分享您的努力,以便有人能够理解您的努力。好问题我们需要html来验证您是否遗漏了某些内容请检查我的答案。如果选择false 2次,true 1次,则返回true。您能否实现单击事件复选框?如果在后一示例的问题1上单击“true”,结果应该是一个选定的选项only@MilindAnantwar我将复选框改为单选按钮,它就像一个符咒!
$('input:checkbox').change(function(){
if($('input:first-child:checked').length==1){
var firstcheckedelementindex=$('input:first-child').index($('input:first-child:checked'));
var secondcheckedelementindex=$('input:nth-child(2)').filter(function(){
return this.checked;
}).length;
return( secondcheckedelementindex==1 && $('input:nth-child(2)').not(':eq('+firstcheckedelementindex+')').is(':checked'))
}else{
return false;
}});