如何将python对象转移到JavaScript变量中使用?



我使用的是Python 2.7。

我想把一个列表变量从我的瓶子的控制器传递到视图页面,在那里它将被用于一个JavaScript变量。

@app.route('/foo'):
def foo():
    l = [{'name':'Matthew'}]
    return template('foo', l=l)

我还做过:

l = json.dumps([{'name':'Matthew'}]

In my view

<script type="text/javascript">
    $(document).ready({
        var l = {{l}}
        l.forEach(function(entry) {
            console.log(entry);
        });
    });
</script>

然而,我的控制台说我有一个语法错误。当我打开HTML时,它呈现为:

var l = [{&quot;name&quot;: &quot;Matthew&quot;]

如何将python对象转移到JavaScript变量中使用?

{{}}之间的替换是HTML实体编码,以防止XSS等。

试试这个:

var l = {{!l}};

瓶子(通过SimpleTemplate引擎)正在转义输出以防止XSS漏洞。总的来说,这是好的。您可以使用!暂时禁用转义,如:

var l = {{!l}};

文档在这里

最新更新