下面的JSON函数没有返回任何内容......
$.getJSON(formUrl, function(data) {
alert(data)
$('.response').html('<p>' + data.title + '</p>'
+ '<p>' + data.description + '</p>');
});
formUrl是正确的,并以
的形式返回数据{"title":"Smashing Magazine","description":"Smashing Magazine is focused on design and web-development. We deliver useful information, latest trends and techniques, useful ideas, innovative approaches and tools."}
有人可以指出我做错了什么吗?我正在提醒数据及其空白......
谢谢!
答案 0 :(得分:3)
您是否使用跨域URL(即从localhost到其他地方)调用$.getJSON
?除非您使用JSONP dataType,否则这将无效。
答案 1 :(得分:0)
由于它不属于same origin,因此您需要将Access-Control
标头添加到JSON响应中。
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET');
答案 2 :(得分:0)
不要将字符串分成两行,否则会导致错误,可能是Javascript未运行的原因。
尝试这样的事情:(注意我没有在两行中破坏html()内的内容)
$.getJSON(formUrl, function(data) {
alert(data);
$('.response').html('<p>' + data.title + '</p>' + '<p>' + data.description + '</p>');
});
答案 3 :(得分:0)
尝试将您的服务器配置为使用contentType fetch.php
application/json
同样仅针对测试,您可以尝试将JSON放入.../fetch.js
文件并使用$.getJSON
进行调用。
它应该可以工作,因为大多数服务器上的.js文件默认为application/javascript
。