jQuery是否内置了JSON支持?

时间:2009-08-11 14:29:38

标签: jquery json

jQuery是否内置了JSON支持,还是我必须使用像jquery.json-1.3.min.js这样的插件?

4 个答案:

答案 0 :(得分:9)

是的,绝对是的。你可以这样做:

$.getJSON('/foo/bar/json-returning-script.php', function(data) {
    // data is the JSON object returned from the script.
});

答案 1 :(得分:9)

你也可以使用$ .ajax并将dataType option设置为“json”:

 $.ajax({
      url: "script.php",
      global: false,
      type: "POST",
      data: ({id : this.getAttribute('id')}),
      dataType: "json",
      success: function(json){
         alert(json.foo);
      }
   }
);

此外,$.get$.post有一个可选的第四个参数,允许您设置响应的数据类型,例如:

$.postJSON = function(url, data, callback) {
    $.post(url, data, callback, "json");
};

$.getJSON = function(url, data, callback) {
    $.get(url, data, callback, "json");
};

答案 2 :(得分:1)

jQuery的JSON支持是简单的,谨慎对待风。我使用了$.ajax,然后使用json.org javascript library解析响应文本。它通过词法分析以避免使用eval()并可能执行任意代码。

答案 3 :(得分:1)

jQuery支持解码 JSON,但不支持编码开箱即用。对于编码,您需要一个插件,一个单独的库或本机支持JSON.stringify和JSON.parse命令的浏览器。