2013-07-23 74 views
1

我可以使用jQuery获取JSON文件的简单属性。 通过以下脚本,我得到了未定义的内容。使用jQuery获取JSON文件中的属性问题GET

我在这里做错了什么?

<script> 
    $(document).ready(function() { 

     var urlOriginal = 'http://xxx.com/xxx/xxx/xxx/resources.js'; 
     var urlResource = 'proxy_dr3.php?proxy_url=' + encodeURIComponent(urlOriginal); 
     $.get(urlResource, function(data) { 
      console.log(data); // I can see all the content from the JSON FILE 
      console.log(data.urlPage); // undefined - PROBLEM HERE 
      var urlHTML = data.urlPage; 

      /*$.get(urlHTML, function(data) { 
       $('#result').html(data); 
      });*/ 

     }); 


    }); 
</script> 

内容resource.js是JSON

{ 

     "urlPage": "http://xxx.com/xxx/xxx/xxx/article_517d960f0cf2fe38916a2f9d.html" 
    } 

在网中的结果类型是text/html。加载后,resource.js

回答

3

$.get不会猜测它是JSON,因为您的服务器给出的MIME类型是错误的。

您可以使用JSON.parse解析提供的值(可能是字符串),但应使用$.getJSON,以便回调接收解析的值。

$.getJSON(urlResource, function(data) { 
     console.log(data); 
     console.log(data.urlPage); 

    }); 
+0

由于这个问题解决了! – GibboK

0

您可以使用任何一种最适合您应用的方法。

$.ajax({ 
      type: "GET", 
      data: "ur data", 
      url: "ur url", 
      contentType: "application/json; charset=utf-8", 
      success: function(data) { 
      } 
     }); 

,或者你可以使用$ .getJSON函数