下面是我点击链接时调用的ajax函数.Below是相同的代码。当我使用jquery 1.4版本运行此功能时,它可以完美地显示数据。但是在使用jquery 1.9运行相同的代码时,我可以看到ajax调用成功但数据未显示在页面中。
$.ajax({
type: "POST",
dataType: "text json",
//contentType: "application/json; charset=utf-8",
url: "pageList.php",
data: $.parseJSON(test2),
// data: test ,
//data:dataString,
cache: false,
success: function (result) {
alert("hiii");
$(".flash").hide();
$(".link a").css('background-color', '#fff');
$("#" + liId + " a").css('border-color', '#a84444');
$("#" + liId).addClass('test');
$("#pageData").html(result);
$("#" + liId).show();
$("#first,#last,#pev,#next").show();
$(back_show).show();
$(front_show).show();
alert('Load was performed.');
}
});
答案 0 :(得分:0)
我在你的代码中观察到的第一件事是你将dataType设置为“text json”,这意味着你期望来自服务器的文本数据和jquery将它转换为json。但是在您的成功函数中,您将结果视为html($(“#pageData”)。html(result);)。
所以我认为您需要清楚从服务器返回的结果以及您希望如何使用该结果。
重要的是,从jQuery 1.5开始,支持多种数据类型。请参阅dataType选项的jQuery Documentation。
多个空格分隔的值:从jQuery 1.5开始,jQuery可以转换 从Content-Type标头中收到的数据类型到什么 你需要。例如,如果您希望将文本响应视为 XML,使用“text xml”作为dataType。你也可以制作一个JSONP 请求,将其作为文本接收,并由jQuery解释为XML: “jsonp text xml。”同样,一个简写字符串,如“jsonp xml” 将首先尝试从jsonp转换为xml,如果失败, 从jsonp转换为文本,然后从text转换为xml。