getJson加载外部数据并将其显示为字符串

时间:2014-02-20 15:03:21

标签: jquery json getjson

http://codio.io/hugolpz/Cat-is-smart/data/dict.json给出一个JSON文件。

鉴于我想加载它,然后显示它(抓住它并使用它)。

我这样使用:

$.getJSON( "http://codio.io/hugolpz/Cat-is-smart/data/dict.json", function( json ) {
  console.log("This step is fired."); // OR NOT !
  alert( "JSON Data: " + JSON.stringify(json) );
 });

$.ajax({
        url: "http://codio.io/hugolpz/Cat-is-smart/data/dict.json",
        dataType: 'json',
        success: function(json2) {
            alert( "JSON Data: " + JSON.stringify(json2) );
        }
});

即使在同一个域上进行测试,也无法正常工作。

我错了什么?如何修复它。

http://jsfiddle.net/676V5/1/

4 个答案:

答案 0 :(得分:1)

如果您使用如下所示的$(document).load,则可以获取json数据:

$(document).load( "http://codio.io/hugolpz/Cat-is-smart/data/dict.json", function( json ) 
{
     alert("finish"); // OR NOT !
     alert( "JSON Data: " + JSON.stringify(json) );
});

答案 1 :(得分:1)

无效的JSON。我建议将来使用像JSONLint这样的工具,这样可以省去很多麻烦!

答案 2 :(得分:1)

您正在调用的url可能不会返回json数据。它可能是字符串格式。 尝试将“dataType”更改为“text”而不是“json”

答案 3 :(得分:1)

总是检查错误......首先它给我一个parseError失败;现在它起作用了:

头:

<script type='text/javascript'>
$(document).ready(function(){
    var request = $.ajax({
      url: "http://codio.io/hugolpz/Cat-is-smart/data/dict.json",
      type: "GET",
      dataType: "html"
    });

    request.done(function( msg ) {
      $( "#log" ).html( msg );
    });

    request.fail(function( jqXHR, textStatus ) {
      alert( "Request failed: " + textStatus );
    });
});
</script>

体:

<div id="log"></div>