【问题标题】:JSON.parse() function not working in javascriptJSON.parse() 函数在 JavaScript 中不起作用
【发布时间】:2013-09-27 21:55:30
【问题描述】:

我有一个列表,我试图解析为json object, ["Harry ", "Potter ", "Name ", "Batman"]。我为此使用 Django 模板。我已经使用simplejson.dumps() 解析了列表。 我正在尝试在我的javascript代码中解析它。它工作正常,直到我的代码中的document.getElementById("demo").innerHTML = x;行,它正在正确打印["Harry ", "Potter ", "Name ", "Batman"]。但是JSON.parse()不起作用。调用解析后编写的行不起作用.谁能告诉我这段代码的问题?

{%extends 'base.html'%}

{%block content%}

<p id="demo">hai {{y}} im</p>

<script>

var x = (("{{y}}").replace(/&(l|g|quo)t;/g, function(a,b){
               return {
                   l   : '<',
                   g   : '>',
                   quo : '"'
               }[b];
           }));
x = x.replace(/u'/g, '\'');
x = x.replace(/'/g, '\"');
document.getElementById("demo").innerHTML = x;
p = JSON.parse( x );
document.getElementById("demo").innerHTML="Aray";
</script>
{%endblock%}

谢谢

【问题讨论】:

  • 转换逻辑是为了什么?为什么不首先从您的视图中输出正确的 json?

标签: javascript django json simplejson


【解决方案1】:

也许你需要在解析它之前对其进行stringify。看下面的例子:

var arr = ["a", "b", "c"];
var str = JSON.stringify(arr);
document.write(str);
document.write ("<br/>");

var newArr = JSON.parse(str);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-01
    • 2011-08-31
    • 2014-07-02
    • 2011-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多