我正在尝试用jQuery替换一个ajaxpro脚本,但是当我使用ajaxpro或jquery时,我从服务器得到的响应是我无法识别的。
这是jquery调用:
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "/ajaxpro/CMS.ItemRetrieve.ashx",
data: jsonData,
beforeSend: function(xhr) {
xhr.setRequestHeader("X-AjaxPro-Method", "ItemRetrieve");
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
},
success: function(responseText) {
console.log(responseText);
}
})这是一个奇怪的回答:
[0,"\r\n\r\n<div id=\"content\">test</div>\r\n "];/*我期望返回HTML或XML,但这似乎是一个数组?我不明白逃脱和怪异的结局。我试着将dataType设置为json,但它不是json,不是html,也许是javascript?服务器响应内容类型似乎设置为文本。
所以我的问题是,如何将此响应用作HTML,或将其转换为HTML?
发布于 2011-11-25 23:19:06
在没有指定dataType的情况下,jQuery对它从AJAX调用返回的数据的格式进行了最佳猜测。90%的时间是正确的。其他时候,它需要一点帮助。
试试这个:
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "/ajaxpro/CMS.ItemRetrieve.ashx",
data: jsonData,
dataType: "html", // Explicitly set the return data type
...
});More information here
https://stackoverflow.com/questions/8270985
复制相似问题