【问题标题】:How to separate a JSON.stringify result如何分离 JSON.stringify 结果
【发布时间】:2016-02-03 22:20:54
【问题描述】:

相关Retrieve two lists, sort and compare values, then display all the results

相关帖子中的问题是如何组合两个列表并对其进行排序。代码引用了每个列表中的每个项目。所以,当我得到结果时,我可以操纵它。

最好的解决方案使用console.log(JSON.stringify(result,null,2));返回结果,很好地组合和排序。

对我来说,麻烦的是能够将其转换回我可以使用的东西。我可以将结果放入一个变量并将其显示在页面上,但它是原始输出:[ { "Title": "apple", "Type": "rome", "State": null }, ...

尝试过'JSON.parse(result);',其中result 是用于处理两个列表的组合和排序的变量。所给出的只是行上的一个无效字符错误。还查看了'replace' 选项。这让我很困惑,tmi。尝试直接在结果上设置一个变量(知道的人都在笑)'var foo = result;'那个返回对象,对象。

期望的最终结果是每个项目都是分开的,这样我就可以将它们放在我的 html 页面上的表格(或列表)中,并且在没有数据的任何列中都留有空白。

我知道必须有一种简单易行的方法来做到这一点,而无需 200 行转换代码。但我找不到一个明确的例子。我所看到的一切都是针对+专家的,或者使用输入到代码中的超级简单数组。

有没有办法将这样的东西(来自我的原件)附加到result 而不是使用 JSON.stringify?在能够使用 JSON.parse 从 JSON.stringify 中提取字段方面,我还缺少哪些其他步骤?

}).success(function (data) {

    var title = '';
    var type = '';
     $.each(data.d.results, 
    function (key, value) {

    title += "Title: " + value.Title + "<br/>";
    type += "Type: " + value.Type  + "<br/>";
    }); 

$("#tdtitle").html(title);
$("#tdtype").html(type);

【问题讨论】:

  • 您能描述一下尝试使用 JSON.parse 时的错误吗?如果字母是 u,则很有可能只是变量未定义。
  • 很难弄清楚你在哪里挣扎。您能否提供data 的预期示例。你在$.each() 循环中得到了什么?
  • 如果你在AJAX调用中使用了dataType: 'json'result已经是一个Javascript数组,你不需要解析它。只需访问数组元素。您的代码应该可以正常工作。
  • 试过'JSON.parse(result);'其中 result 是用于处理两个列表的组合和排序的变量。所给出的只是行上的一个无效字符错误。
  • "只访问数组元素。" ——不是很有帮助。如果我知道缺少什么或如何“仅访问元素”,我就不会发布这个问题。

标签: javascript jquery json sharepoint-2013


【解决方案1】:

特里,您写道:“所有给出的只是行上的无效字符错误”?那么result 不是一个有效的 json。在这里测试:http://jsonlint.com/,修复它,然后重试。

var data = {
  d:{
    results: [
      { "Title": "apple", "Type": "rome", "State": null }, 
      { "Title": "grape", "Type": "fruit", "State": null }
    ]
  }
};

var title = '';
var type = '';
$.each(data.d.results, function (index, value) {
    title += "Title: " + value.Title + "<br/>";
    type += "Type: " + value.Type  + "<br/>";
}); 

alert(title + type);
&lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"&gt;&lt;/script&gt;

【讨论】:

  • 加夫里尔,就是这样。我错过的那块。 JSON 正确返回,但我错过了最后一步 - $.each() 以下工作(其中“结果”是保存数据的变量) var title = '';变种类型 = ''; $.each(result, function (index, value) { title += "Title: " + value.Title + "
    "; type += "Type: " + value.Type + "
    " ; });
猜你喜欢
  • 2013-02-07
  • 2016-09-02
  • 2017-11-11
  • 2016-01-11
  • 2022-12-13
  • 1970-01-01
  • 1970-01-01
  • 2023-03-23
  • 2022-01-20
相关资源
最近更新 更多