jQuery.validate.js在使用type =" button"时不工作对于MVC中的ajax

时间:2016-01-20 12:31:02

标签: javascript jquery ajax asp.net-mvc jquery-validate

我知道有很多类似的问题,但我没有得到我在MVC中的情况的确切解决方案所以我再次提问。

我是MVC的新用户,我使用jQuery AJAX来调用控制器方法来插入数据。

AJAX功能。

function btnLoginUser(btnClicked) {
      var $form = $(btnClicked).parents('form');

      $.ajax({
            type: "POST",
            url: "/Accueil/Login",
            data: $form.serialize(),
            error: function (xhr, status, error) {
            },
            success: function (response) {
            }
        });
        return false;
    }

我的按钮在视图中的形式。

<input type="button" value="Se connecter" class="btn btn-success" onclick="btnLoginUser(this)" />

当我使用此按钮时,键入=&#34;按钮&#34;它进行ajax调用,但jQuery验证停止工作。

但是当我使用type="submit"时,验证开始,但ajax停止工作,页面刷新。

type="submit"的按钮。

<input type="submit" value="Se connecter" class="btn btn-success" />

那么有没有什么方法可以使用验证和AJAX来插入数据而不刷新页面?

任何帮助都将不胜感激。

修改

Javascript通话。

$(document).ready(function () {
        $('#idUser').on('submit', function (e) {
            if (!e.isDefaultPrevented()) {
                e.preventDefault();
                // Your Ajax code
                btnInsertUser(this);

            }
        })
    });

表格中的按钮是。

<input type="submit" value="S’inscrire" class="btn btn-success" onclick="javascript:return AcceptTermAndcondition();" />

1 个答案:

答案 0 :(得分:-1)

试试:

$('#form').on('submit', function(e){
    if (!e.isDefaultPrevented()) {
        e.preventDefault();
        // Your Ajax code
    }
}