所以我有一个表单,如果输入无效,我不会让表单像这样传递
$(".main-form").submit(function(e){
return false;
});
这不会让表单通过。当用户正确完成所有内容时,我会尝试这样做
$(".main-form").submit(function(e){
return true;
});
但由于某种原因,它始终保持false
。任何解决方法?
答案 0 :(得分:3)
您应该使用单个submit
处理程序:
$(".main-form").submit() {
if (...) {
return true;
} else {
return false;
}
}
其中...
包含您的验证检查。实际代码可能稍微复杂一些,例如
if (field1 is invalid) {
return false;
} else if (field2 is invalid) {
return false;
}
...
} else {
return true;
}
答案 1 :(得分:0)
你必须清除旧的处理程序,所以你要像这样初始化它:
$(".main-form").on('submit', function(e){
return false;
});
然后更改处理程序:
$(".main-form").off('submit');
$(".main-form").on('submit', function(e){
return true;
});