我尝试从远程服务器获取一些值,这些值以JSON格式生成数据>
$("#productSearchpage").live("pageshow", function(event, ui){
$.getJSON('http://www.akcniceny.cz/php/mapa-slev-data.php?box[left][lat]=50.5&box[left][lng]=14.5&box[right][lat]=51&box[right][lng]=15&group[]=3&typ[]=zbozi&full=televizor', function(data) {
$('.result').html('<p>' + data.jmeno + '</p>'
+ '<p>' + data.ulice[1] + '</p>');
});
但我没有JSON的经验,所以在Jquery网站上使用了教程,不幸的是脚本不起作用。
可以解决什么以及如何正确使用JQUERY和JSON?
感谢您的回复。
答案 0 :(得分:2)
服务器返回的json无效。
基本上它返回一个对象数组,但在最后一个对象之后有一个不必要的逗号(通常表示另一个对象是数组)。
在构建json服务器端删除最后一个逗号之后返回响应。
如果您无法访问服务器端代码,则无法使用$.getJSON
。您将需要流动这些步骤:
$.ajax
方法与config:dataType: text
$.parseJSON
答案 1 :(得分:0)
请试试这个:
$("#productSearchpage").live("pageshow", function(event, ui){
$.ajax({
url: 'http://www.akcniceny.cz/php/mapa-slev-data.php?box[left][lat]=50.5&box[left][lng]=14.5&box[right][lat]=51&box[right][lng]=15&group[]=3&typ[]=zbozi&full=televizor',
dataType: 'json',
data: data,
success: $('.result').html('<p>' + data.jmeno + '</p>'+ '<p>' + data.ulice[1] + '</p>');
});
});
答案 2 :(得分:0)
此脚本是否在同一个域中? 如果不是浏览器不允许跨域get / post使用xmlhttp请求。您可能必须使用其他解决方法。 Here是详细信息。