从文本文件加载json数组

时间:2012-02-29 03:41:31

标签: jquery json dojo get

我使用jquery和dojo来搜索json字符串

   $.get('json.txt', function(data) { //alert(data); works fine

      dojo.require("dojox.json.query");
      query = "(product_tonnage = "+$('#slider-tonnage-value').val()+")";
      var json_db = jQuery.parseJSON(data);

      var results = "";
      results = dojox.json.query(query, json_db);
             alert(results.length); //it must contain 4 results
      });

我怎么得到错误“JSON.parse:JSON数据后意外的非空白字符”

2 个答案:

答案 0 :(得分:1)

$.get('json.txt', function(data) {
      dojo.require("dojox.json.query");
      query = "(product_tonnage = "+$('#slider-tonnage-value').val()+")";
      var json_db = jQuery.parseJSON(data);
      var results = "";
      results = dojox.json.query(query, json_db);
      alert(results.length);
}, 'json');

请尝试一下,看看它是否有效。

答案 1 :(得分:1)

jQuery的$.get()方法(以及其他Ajax方法)将为您解析JSON(假设响应的MIME类型是正确的)。您还可以在$.get()调用结束时添加“json”参数,以明确告诉jQuery您希望JSON返回。

然后自己调用JSON.parse()将尝试解析(已经解析的)对象而不是JSON字符串。