JavaScript使用Jinja模板中呈现的数据引发SyntaxError我正在尝试将数据作为JSON从一个Flask路由传递到一个Jinja模板来呈现JavaScript。我想使用JavaScript迭代数据。浏览器显示SyntaxError: Unexpected token '&'. Expected a property name.什么时候JSON.parse对呈现的数据调用。如何在JavaScript中使用呈现的JSON数据?var obj = JSON.parse({{ data }})for (i in obj){
document.write(obj[i].text + "<br />");}def get_nodes(node):
d = {}
if node == "Root":
d["text"] = node else:
d["text"] = node.name
getchildren = get_children(node)
if getchildren:
d["nodes"] = [get_nodes(child) for child in getchildren]
return d
tree = get_nodes("Root")return render_template("folder.html", data=tree)如果我只是把{{ data }}在HTML部分,我所看到的看起来是正确的。{'text': 'Root', 'nodes': [{'text': u'Prosjekt3'}, {'text': u'Prosjekt4', 'nodes': [{'text': u'mappe8'}]}]}
2 回答
天涯尽头无女友
TA贡献1831条经验 获得超9个赞
tojson
return render_template('tree.html', tree=tree)
var tree = {{ tree|tojson }};
u
{{ tree|tojson|safe }}
safe
# already dumped to json, so tojson would double-encode itreturn render_template('tree.html', tree=json.dumps(tree))
var tree = {{ tree|safe }};
Markup
safe
# already dumped and marked safereturn render_template('tree.html', tree=Markup(json.dumps(tree)))
var tree = {{ tree }};
tojson
return render_template('tree.html', tree=tree)
{% for item in tree %} <li>{{ item }}</li>{% endfor %}
慕慕森
TA贡献1856条经验 获得超17个赞
return render_template("folder.html", data=tree)
return flask.jsonify(**tree)
添加回答
举报
0/150
提交
取消