【问题标题】:How to pass data to javascript in flask\jinja environment?如何在flask\jinja 环境中将数据传递给javascript?
【发布时间】:2019-11-15 00:31:23
【问题描述】:

我在 Windows 10 环境中使用 VS 代码来调试 python flask\jinja 应用程序。

Python 代码将数据传递到 html 页面没有问题,{{ formDict }} 正确显示数据。调试显示有数据传递给 javascript。但是,运行到这一行

var dict = json.stringfy('{{ formDict|tojson|safe }}');

产生这个错误

toJson 没有定义

这是不加载 jinja 的 VS 代码问题还是其他问题?有什么解决办法的推荐吗?

Python 代码:

formDict = {"firstname": "Eric", "lastname": "Smith"}
return render_template("appointment.html",formDict=formDict)


html file - appintment.html
    <!DOCTYPE html>
    <html lang="en" dir="ltr">
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>    
            function createPointOption () {
                var dict = json.stringfy('{{ formDict|tojson|safe }}');
                ......  
            }   
        </script>
    </head>
    <body onload="creatPointOption()">
        ....
        <p id="test">{{formDict}}</p>
    </body>
</html>

【问题讨论】:

    标签: python flask jinja2


    【解决方案1】:

    你确定你的错误是tojson is not defined。当我运行你的代码时,我得到了json is not defined。

    尝试: var dict = JSON.stringify('{{ formDict|tojson|safe }}');

    注意JSON的大写

    【讨论】:

    • 尝试使用 JSON。 VS 代码调试器显示错误:“JSON NameError: name 'JSON' is not defined”。这只是在 javascript 中作为 '{{}}' 传递的 jinja 变量的问题。相同的 jiajin 变量在 html 页面中工作得很好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-05
    • 2019-01-02
    • 2020-09-20
    • 2014-12-17
    • 2019-03-18
    • 2022-07-17
    • 1970-01-01
    相关资源
    最近更新 更多