我在JQuery中创建了这个函数:
function CheckRequired() {
var ret = true;
$(".required").each( function() {
var check = $(this).val();
if(check == '') {
//alert($(this).attr("id"));
ret = false;
}
});
if(!ret) {
alert("One or more fields cannot be blank");
return false;
}
}
在我的表单提交按钮上,我在onClick上运行
<input type="submit" onClick="CheckRequired();" />
如果表单中任何需要类的字段都有空白值,则错误将提醒用户,表单不应提交。
警报显示,但表单似乎仍在提交
答案 0 :(得分:1)
使用preventDefault。此方法可确保不会触发事件的默认操作。
function CheckRequired(event) {
var ret = true;
$(".required").each( function() {
var check = $(this).val();
if(check == '') {
//alert($(this).attr("id"));
event.preventDefault();
}
});
if(!ret) {
alert("One or more fields cannot be blank");
event.preventDefault();
}
}
答案 1 :(得分:0)
要防止表单提交,您应该将事件绑定到表单的onsubmit,并返回函数结果
<form onsubmit="return CheckRequired()" />
此外,由于您已经使用了jquery,因此在javascript中绑定事件会更方便:
$('#form_id').submit(function(){
//your form submit code
})
答案 2 :(得分:0)
我认为您必须使用event.preventDefault();
来阻止默认提交操作,如下所示:
Prevent submit button with onclick event from submitting