$('#requestButton').click(function() {
$.get('ajax.php', function(data) {
alert(data);
});
});
alert()
没有显示。问题是什么?
答案 0 :(得分:3)
问题是您的服务器声称:
content-type: application/javascript
但是你要发回一份JSON文件。当jQuery从服务器返回(它认为是)一个JavaScript程序时,jQuery不会填充data
。
您需要发送正确的内容类型,即application/json
。
使用getJSON
或指定"json"
是非常难以告诉jQuery不相信内容类型并以不同的数据格式进行解析,但您应该修复服务器,以便相反地说明内容。
答案 1 :(得分:1)
而不是:
$.get
使用:
$.getJSON
正如您在评论部分中提到的,返回的数据是json
。
或在dataType
来电中添加$.get()
:
$.get( "ajax.php", function( data ) {
console.log(data);
}, "json" ); //<-----------add dataType here