我正在使用asp .net mvc 4,我有一个使用ajax验证的html表单。
我使用此javascript代码来了解表单是否无效。这段代码有效。
$('#form').bind('invalid-form.validate', function () {
alert("error");
return false;
});
但是我找不到成功的javascript回调?
我试过了:
$('#form').bind('valid-form.validate', function () {
alert("success");
});
或
$('#form').validate({
invalidHandler:
function (form, validator) {
alert('error');
},
rules: function (form, validator) {
alert('success ');
}
});
但我从来没有得到成功警报。谢谢你的帮助。
答案 0 :(得分:1)
使用ajax.beginform
@using (Ajax.BeginForm("Delete",new{id = Model.id}, new AjaxOptions
{
OnSuccess = "OnSuccess",
OnFailure = "OnFailure",
HttpMethod="Post"
}))
然后将OnSuccess / Onfailure更改为java脚本函数的名称
答案 1 :(得分:0)
绑定到form.submit而不是像这样 -
$('#form').on('submit', function (e) {
e.preventDefault();
if ($(this).valid()) { // This checks if the form is valid
alert("success"); // Or instead of success you can hide the form here
$.ajax({
url: this.action,
type: this.method,
data: $(this).serialize(),
success: function (result) {
// Goes in here after your MVC controller action is done
},
error: function (result) {
// Goes in here if your mvc controller action returns an error
}
});
};
});