【问题标题】:Variable remaining as undefined once sent from Flask to JS变量从 Flask 发送到 JS 后仍然未定义
【发布时间】:2021-02-01 03:28:14
【问题描述】:

我已按照post 将数据从烧瓶发送到 JS 文件。

烧瓶:

@app.route('/')
def home():
    content = "Hello"
    return render_template('index.html', content=content)

HTML

<head>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
</head>
<body>
    <script src='static/app.js'></script>
    <meta id="my-data" data-name="{{content}}">
</body>

JS/JQuery

var djangoData = $('#my-data').data();

我也试过var djangoData = $('#my-data').data('content'); 尽管如此,我得到:

typeof djangoData
    "undefined"

在控制台中。

我也很想知道这种方法是否仍然被认为是最佳实践,如果不是,我知道有很多方法可以将数据从 FLASK 发送到 JS。

谢谢:)

【问题讨论】:

    标签: javascript python html jquery flask


    【解决方案1】:

    var requiredData = document.getElementById("my-data").getAttribute("data-name") 将为您提供您正在寻找的数据

    【讨论】:

    • 非常感谢!!你会推荐这种方法吗?因为我听说它会使 HTMl 泛滥,并可能引发安全问题。
    • 如果您使用现代前端框架并使用 jinja 进行服务器端渲染和使用 api 调用在同一页面中进行所需的数据加载,它会很好,因为它会进行增量加载。但是,如果您使用 jquery 或纯 javascript,由于整个 html 渲染将在更新时发生,那么可能不推荐
    猜你喜欢
    • 2016-09-10
    • 1970-01-01
    • 2014-11-03
    • 2020-08-09
    • 2021-02-20
    • 2015-11-23
    • 2019-02-08
    • 2014-12-01
    • 2020-06-05
    相关资源
    最近更新 更多