我有一个,因为我提交了这个按钮:
<button id="registerButton" type="submit" name="submit" style="margin-left: 300px;">Click to Complete</button>
我正在使用这个jQuery进行错误检查:
$('#registerButton').bind('click',function(){
if($('#formElem').data('errors')){
alert('Please correct the errors in the Form');
return false;
}
});
当我提交表单时,如果在表单上检测到错误,它将弹出警报。但是,如果没有错误,按钮不会执行任何操作。我做错了什么?
答案 0 :(得分:2)
将验证绑定在表单的提交事件上。
$("#formid").submit(function(e) {
if($(this).data('errors')){
//display error
e.preventDefault(); //stop the submit
} else {
//do something or nothing
//but it will submit the form
}
});
答案 1 :(得分:0)
您似乎需要在函数中添加else {return true;}
。
答案 2 :(得分:0)
为您提供一个适合我的完整最小示例,包括firefox,Internet Explorer,chrome和opera。希望有所帮助。
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script>
jQuery(document).ready(function(){
$("#frm").submit(function(e){
if($(this).data("errors")){
alert("errors");
return false;
}
return true;
});
});
</script>
</head>
<body>
<form id="frm" action="#sent" data-errors="have errors">
<input type="submit" />
</form>
</body>
</html>