【问题标题】:how to get json form remote server via jQuery?如何通过 jQuery 从远程服务器获取 json?
【发布时间】:2015-10-30 09:21:00
【问题描述】:

这是一个 json 文件:

myjson.php

mylink([
{
"link": "link1",
"url": "http://www.example1.com"
},
{
"link": "link2",
"url": "http://www.example2.com"
},
{
"link": "link3",
"url": "http://www.example3.com"
}
])

我试着叫它。

$.ajax({
    url: "json/physician.php",
    dataType: "text",
    success: function(data) {
        json = $.parseJSON(data)
        alert(json.mylink.link[0]);
    }
});

但它不起作用。(不返回任何警报。) 我怎么了?

【问题讨论】:

  • 仅供参考,如果您将 datatype 更改为 json(或完全删除它并让 jQuery 自动检测响应类型),您可以删除对 $.parseJSON 的调用,因为 jQuery 会为您完成.
  • myjson.php 似乎返回的是 JSONP,而不是 JSON。
  • 您的 json 格式不正确..

标签: javascript jquery json getjson


【解决方案1】:

您的 JSON 无效。您尝试执行的有效格式为:

{         //json
 "myLink": { //.mylink
    "link": [   //.link
        {         //[0]
            "link": "link1",
            "url": "http://www.example1.com"
        },
        {
            "link": "link2",
            "url": "http://www.example2.com"
        },
        {
            "link": "link3",
            "url": "http://www.example3.com"
        }
    ]
 }
}

您可以使用 jsonlint.com 等工具验证 JSON

不知道为什么文件是.php文件,你可以使用getJSON方法来检索json数据,它会自动为你解析响应。

【讨论】:

    【解决方案2】:

    为什么你要创建一个复杂的json数组,而且你的json不是一个有效的json数组,当你创建你的json数组时,你可以在jsonlint中检查有效的json

    这里的简单形式是 javascript 中的 JSON 数组以及如何检索 value var mylink=[ { "link": "link1", "url": "http://www.example1.com" }, { "link": "link2", "url": "http://www.example2.com" }, { "link": "link3", "url": "http://www.example3.com" } ];

    之后,您可以从数组的任何索引中获取值:-

    alert(mylink[0].link);
    alert(mylink[0].url);
    

    【讨论】:

      【解决方案3】:
      $.ajax({
          url: 'https://app.zencoder.com/api/v2/jobs/1234/progress.js?api_key=asdf1234',
          dataType: 'jsonp',
          success: function(data){
          // write your code 
      
          }
      });
      

      【讨论】:

      • 你能解释一下答案吗?
      猜你喜欢
      • 2013-05-03
      • 1970-01-01
      • 2018-04-24
      • 2015-08-18
      • 1970-01-01
      • 1970-01-01
      • 2014-01-10
      • 1970-01-01
      • 2015-04-03
      相关资源
      最近更新 更多