如何在Ajax请求之前在某个中心位置验证?

时间:2013-04-30 22:39:03

标签: jquery asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 asp.net-mvc-2

我在视图中加载了一些部分视图。所有部分视图都由Ajax在JQuery中调用。 在向服务器发送请求之前,我必须进行一些验证。为此我可以使用 BeforeSend

$.ajax({
    url: url,
    async: true,
    type: 'POST',
    data: JSON.stringify({ Parameters... }),
    beforeSend: function (xhr, opts) {

    },
    contentType: 'application/json; charset=utf-8',
    complete: function () {  },
    success: function (data) {

    }
});

我有类似的结构,对应于部分视图的所有JQuery函数。我可以在 beforeSend 中实现我的验证部分。

有没有办法在某个集中的地方实施验证,如果发现未经验证,则在该中心位置中止请求? 因此我不需要在每个Ajax块中的任何地方编写相同的代码(函数调用))

1 个答案:

答案 0 :(得分:1)

jQuery(window).load(function () {
    jQuery.ajaxSetup({
        beforeSend: function (xhr, opts) {
            if(Some Validation Fails) { //Validation check logic
                 xhr.abort();
                 debugger;
            }
        }
    });
});

为什么window.load和为什么没有DOM Ready函数?

让所有部分视图加载,一旦加载完成,然后点击某个按钮就可以实现上述功能