在进行AJAX调用时,是否应该触发Page_Load事件处理程序中的断点?

时间:2013-08-06 04:50:48

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

我正在制作以下ajax请求:

    $.ajax({
    type: 'POST',
    url: 'AJAX.aspx/TestPageLoad',
    data: JSON.stringify({}),
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (data) {
        alert('Success');
    },
    error: function (x, e) {
        alert( x.responseText);
    }
});

我在我的AJAX.aspx页面中设置了一个断点,但它没有被击中。这是它应该的样子吗?根据{{​​3}}确实如此。

1 个答案:

答案 0 :(得分:3)

  

我在我的AJAX.aspx页面的Page_Load中放了一个断点,但确实如此   没有被击中

这是因为JavaScript在DOM Ready上执行。

  

在进行ajax调用时,是否会触发Page_Load事件?

没有。它在Page生命周期后和DOM ready

之后执行

为此,您必须在Ajax调用中设置调试器,如下所示

$(document).ready(function () {
    debugger;                     //A kind of Break Point
    $.ajax({
        type: 'POST',
        url: 'AJAX.aspx/TestPageLoad',
        data: JSON.stringify({}),
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (data) {
            alert('Success');
        },
        error: function (x, e) {
            alert(x.responseText);
        }
    });
});