我正在使用内联函数提交表单,但它没有调用我的验证脚本,我想知道是否有人能指出我正确的答案方向?
我的按钮:
<a href="javascript:UpdateEnquiry();" id="continue_btn" class="btnSprite">Save</a>
我的功能:
function UpdateEnquiry() {
$.ajax({
url: 'test.php',
dataType: 'xml',
timeout: 15000,
type: 'post',
data: $('#validate').serialize(),
success: UpdateEnquirySuccess,
error: function (result) {parent.$.fancybox.close();}
});
}
我想在提交之前初始化jquery validationEngine插件。 http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/
非常感谢任何帮助。
亲切的问候 拉结
答案 0 :(得分:4)
假设您的验证引擎已初始化,请在执行ajax请求之前调用validate
方法。如果该方法返回true
,则继续:
function UpdateEnquiry() {
if ( $(yourForm).validationEngine('validate') ) {
$.ajax({
...
});
}
else {
// The form didn't validate
}
return false; // Prevents default action from happening
}
答案 1 :(得分:4)
$('#registerform').submit(function(e) {
e.preventDefault();
var vars = $("#registerform").serialize();
if ($("#registerform").validationEngine('validate')) {
$.ajax({
url:"sample.php"
});
}
});
没有停止默认操作我正在重定向到我的表单操作页面。所以不得不使用preventdefault()。 @mgibsonbr我的坏