jquery ajax数据类型html ajaxcomplete响应未定义

时间:2017-10-19 09:46:35

标签: jquery asp.net-mvc

我写了一个函数来获取PartialView

function  open_Modal ()  {
        $.ajax({
            url: URLRoot,           

            type: "POST",            
            dataType: "html",
            success: function (data, textStatus, XMLHttpRequest) {

                //do something
            }
        });
    }

我还有另一种方法可以在ajax调用之间检查会话是否丢失。

$(document).ajaxComplete(function (event, xhr, settings) {
    var response = xhr.responseJSON;
    console.log(response)
    try
    {
        if (response.sessionlost != undefined && response.sessionlost.lost == 1) {
            window.location = URLRoot + "/" + response.sessionlost.url;
        }
    }
    catch(ex){}
});

我发现dataType: "html",的回复始终未定义console.log(response)。但它在dataType: "json",

时有效

任何人都请为两种情况都提供一些工作。

1 个答案:

答案 0 :(得分:0)

请确保如果更改dataType,则表示您必须使用相应的响应类型:

如果 dataType html ,您可以通过

阅读回复

var response = xhr.responseText;