1

我是 JQuery、json 等的新手。

我有一些 json 数据,我从一个我不管理的网站提取到 Jquery 手机/电话间隙/dreamweaver 中。JSON 像这样返回:

({
  "status": "OK",
  "total": "1281",
  "people": [
    {

紧随其后的是所有数据,然后以:

    }
  ]
})

括号将不允许我的 json 查询使用简单的函数显示在浏览器中:

            <script type="text/javascript">
        $(document).on('pageinit', '#more', function(){ 
            var url="http://www.somedata.com";
            $.getJSON(url,function(json){
                //loop through deals
                $.each(json.people,function(i,dat){
                    $("#todaycal").append("<li>"+dat.name+"  "+dat.caseNo+"</li>");
                 });
                 $("#todaycal").listview('refresh');
            });
         });
    </script>

如何删除括号或“转义”它以使其正常工作?

谢谢。

4

2 回答 2

3

我的猜测是您正在尝试访问 JSONP 数据。您可能需要添加?callback=?到您的 URL。

var url="http://www.somedata.com";
$.getJSON(url+'?callback=?', function(json){
    //loop through deals
    $.each(json.people,function(i,dat){
        $("#todaycal").append("<li>"+dat.name+"  "+dat.caseNo+"</li>");
    });
    $("#todaycal").listview('refresh');
});
于 2013-09-23T14:48:39.357 回答
2

听起来您正在访问一个 JSONP 请求,该请求应该使用回调函数。通常 URL 的格式为http://example.com/data.json?callback=foo,返回的数据为foo({"foo":"bar","fizz":"buzz"})。可能会添加这些括号,因为回调被评估为空字符串。

于 2013-09-23T14:49:40.110 回答