Javascript jQuery-验证
我的验证过程有问题。我没有使用标准的“提交”按钮,而是使用Javascript jQuery-验证,javascript,jquery,Javascript,Jquery,我的验证过程有问题。我没有使用标准的“提交”按钮,而是使用Print和jQuery来监听点击。这是单击“按钮”时我得到的验证代码: var validation = ""; function validate() { $("#servDetails").find("input").each(function () { if ($(this).prop("required") && $(this).val() == "") { validation = fa
Print
和jQuery来监听点击。这是单击“按钮”时我得到的验证代码:
var validation = "";
function validate() {
$("#servDetails").find("input").each(function () {
if ($(this).prop("required") && $(this).val() == "") {
validation = false;
}
else {
validation = true;
}
});
$("#checklist").find("input[required]").each(function () {
if ($(this).prop("required") && $(this).val() == "") {
validation = false;
}
else {
validation = true;
}
});
}
$("#print").on("click", function() {
validate();
if (validation == false) {
alert("Please fill out all required inputs!");
return false;
}
else {
window.print();
}
});
如果我单击按钮而不填写任何内容(所有项目均为空),我将收到预期的警报
如果我填写了所有必需的元素,它会按预期调出打印拨号
但是,如果我将某些框留空,而其他框已正确填充,它仍将打印,而不是像我需要的那样给我发出警报。有什么想法吗?必须重写代码,或者最好用任何验证插件替换它
但在你的情况下,我想,你只是忘记返回,以防你发现一些未填充的字段。因此,如果有任何填充输入,它将覆盖验证变量
最简单的解决办法是删除
else{validation=true;}
code块,然后添加
validation = true;
在函数的边缘