为什么如果我在提交函数中放入一些带有“if”的代码,那么方法(显然)总是返回一个true并提交表单?
例如
var test = "test";
$("#contact_form").submit(function(){
if (test == "random"){
}
return false;
});
无论何时,无论是否使用任何代码,我都会提交if。
答案 0 :(得分:1)
$("#contact_form").submit(function(e){
e.preventDefault();
if (test === "random"){
}
});
在运行任何代码之前停止默认操作。并且,添加===
。它也会检查类型。
答案 1 :(得分:0)
这取决于你在if块中写的代码。如果您错误地写回true或者有任何js错误,那么它将提交表单。如果您在提交表单时尝试进行任何ajax调用,请在提交处理程序中阻止默认表单提交。这和返回false一样好。
$("#contact_form").submit(function(e){
e.preventDefault();
});