【问题标题】:JavaScript: Remove Double Quotes - JSON.Stringify()JavaScript:删除双引号 - JSON.Stringify()
【发布时间】:2017-05-20 03:11:41
【问题描述】:

在 JavaScript 中使用 JSON.stringify() 方法允许 JSON 数据在浏览器中呈现后,它会在浏览器中呈现的属性的任一端输出双引号“” - 知道如何解决这个问题吗?

这是我的代码 -

<li class="divider">Brown Eyes</li>
<div id="output1"></div>
<li class="divider">Green Eyes</li>
<div id="output2"></div>

<script>
    var myContainer = "";

    var a = new XMLHttpRequest();
    a.open("GET", "https://api.myjson.com/bins/1dwnm", true);
    a.onreadystatechange = function () {
        console.log(a);
        if (a.readyState == 4) {
            var obj = JSON.parse(a.responseText);
            for (i = 0; i < obj.length; i++) {

                if (obj[i].eyeColor == 'brown') {
                var myContainer = "<ul class='list'><li>" + obj[i].name.first + " " + obj[i].name.last + " - " + obj[i].eyeColor + "</li></ul>";
                var myContainer = JSON.stringify(myContainer);
                document.getElementById('output1').innerHTML += myContainer;    
                }
                if (obj[i].eyeColor == 'green') {
                var myContainer = "<ul class='list'><li>" + obj[i].name.first + " " + obj[i].name.last + " - " + obj[i].eyeColor + "</li></ul>";
                var myContainer = JSON.stringify(myContainer);
                document.getElementById('output2').innerHTML += myContainer;    
                }
            }
        }

    }
    a.send();
</script>

【问题讨论】:

  • 你正在调用 JSON.stringify() 的东西已经是一个字符串。它旨在用于 JavaScript 对象,而不是 html。
  • @Gavin - 你是对的。我评论了“var myContainer = JSON.stringify(myContainer);”拼凑出来,引号被删除。谢谢!

标签: javascript json stringify


【解决方案1】:

因为“&lt;ul class='list'&gt;&lt;li&gt;Faye Garrett - brown&lt;/li&gt;&lt;/ul&gt;”不是有效的 JSON 字符串。

取消注释您的字符串化行并且它可以工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-15
    • 2020-01-30
    • 2017-05-21
    • 2018-05-28
    • 1970-01-01
    • 1970-01-01
    • 2019-08-11
    相关资源
    最近更新 更多