2

私は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 ');
                }
            });

しかし、私は成功のアラートを受け取りません。ご協力いただきありがとうございます。

4

2 に答える 2

1

ajax.beginform を使用する

@using (Ajax.BeginForm("Delete",new{id = Model.id}, new AjaxOptions 
  {
   OnSuccess = "OnSuccess",
   OnFailure = "OnFailure",
   HttpMethod="Post"
 }))

次に、OnSuccess/Onfailure を Java スクリプト関数の名前に変更します

于 2013-07-25T07:32:07.437 に答える
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                   
                }
            });
        };
});
于 2013-07-25T15:29:57.607 に答える