使用 jQuery .getJSON 或类似方法定位内联 JSON

Target inline JSON using jQuery .getJSON or similar method

我正在尝试使用 jQuery 的 .getJSON 方法从包装在 <script> 标记中的内联数组中获取数据。据我阅读文档 (http://api.jquery.com/jquery.getjson/),.getJSON 需要一个 URL 和外部文件来调用。

$.getJSON('items.js', function(data) {});

我将如何使用这种方法或另一种方法专门针对内联数组(没有外部文件),例如下面的方法:

  <script type="application/json">   
   {
    "items": {
        "blue": {
          "a": "a",
          "b": "b",
          "c": "c"
        }
     }
   }
  </script>

谢谢!

最好将此数据存储到 JavaScript 对象中。

做这样的事情:

<script type="text/javascript">
    var jsonData = <?php echo json_encode($dataArray, JSON_HEX_TAG);?>;
</script>

您不能将 JSON 单独放在脚本标记中,它必须是有效的 Javascript 语句。将 JSON 分配给变量名称:

<script>
var data = {
    "items": {
        "blue": {
          "a": "a",
          "b": "b",
          "c": "c"
        }
     }
};
<script>

然后您的代码的其余部分可以使用 data 来访问该值。