输入时javascript验证仅在最后一种情况下有效

输入时javascript验证仅在最后一种情况下有效,javascript,jquery,ruby-on-rails,coffeescript,Javascript,Jquery,Ruby On Rails,Coffeescript,如果这是一个常见的问题,请不要介意。我是javascript的初学者。 我已经编写了一个JavaScript代码来比较每个表单和数据库中保存的每个ans的相等性。但是当我运行代码时,它只检查最后一个。而其他人则表现为不匹配。我希望它能在每种形式下工作,并将其与相对答案数据库列进行比较。 代码在这里 列出问题 =“ans1”%> “检查(此)”%> =“ans2”%> “检查(此)”%> =“ans3”%> “检查(此)”%> =“ans4”%> “检查(此)”%> =“ans5”%> “检查(

如果这是一个常见的问题,请不要介意。我是javascript的初学者。 我已经编写了一个JavaScript代码来比较每个表单和数据库中保存的每个ans的相等性。但是当我运行代码时,它只检查最后一个。而其他人则表现为不匹配。我希望它能在每种形式下工作,并将其与相对答案数据库列进行比较。 代码在这里

列出问题
=“ans1”%>
“检查(此)”%>
=“ans2”%>
“检查(此)”%>
=“ans3”%>
“检查(此)”%>
=“ans4”%>
“检查(此)”%>
=“ans5”%>
“检查(此)”%>
=“ans6”%>
“检查(此)”%>
=“ans7”%>
“检查(此)”%>
=“ans8”%>
“检查(此)”%>
=“ans9”%>
“检查(此)”%>
=“ans10”%>
“检查(此)”%>

功能检查(输入){ if(input.value!=document.getElementById('ans1').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans2').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans3').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans4').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans5').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans6').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans7').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans8').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans9').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } } 功能检查(输入){ if(input.value!=document.getElementById('ans10').value){ input.setCustomValidity(“不正确”); $(“p”).hide(); }否则{ //输入有效--重置错误消息 input.setCustomValidity(“”); } }
函数检查的许多声明将覆盖该函数以前的所有声明。只有最后一个
函数检查()
可以工作

在该处理程序中只使用一个函数声明和
test
输入值

$(input).parents('tr').find(':input:hidden')
将返回特定
tr中的隐藏元素

试试这个:

功能检查(输入){
var pre=$(输入).parents('tr').find(':input:hidden'))
if(input.value!=pre.val()){
input.setCustomValidity(“不正确”);
$(“p”).hide();
}否则{
input.setCustomValidity(“”);
}

}
解析的HTML更有意义。。