【问题标题】:Sending Jinja2 data to another js file -- flask将 Jinja2 数据发送到另一个 js 文件——flask
【发布时间】:2018-06-01 18:52:45
【问题描述】:

我有一个 js 文件,它用所有必要的参数绘制函数图。我希望在 html 中做这样的事情:

<script  src="js/index2.js" value = {{GraphData}}></script>

js 文件看起来像这样

var chart = AmCharts.makeChart("chartdiv", {
  "graphs": [{
  "id": "g3",
  "valueAxis": "v1",
   ...
   }],
  "Data" = {{GraphData}} 
})

有没有办法将图形数据转入js文件?

【问题讨论】:

    标签: javascript python html flask jinja2


    【解决方案1】:

    这里对脚本标签的功能存在根本性的误解。 “值”不是 HTML 脚本标签的有效属性,该标签用于将 JavaScript 文件的文本内容导入您的 HTML 文件。

    要实现你想要的,你可以简单地删除:

    <script src="js/index2.js" value = {{GraphData}}></script>
    

    并将其替换为您要导入的内容:

    var chart = AmCharts.makeChart("chartdiv", {
      "graphs": [{
      "id": "g3",
      "valueAxis": "v1",
      ...
      }],
      "Data" = {{GraphData}}  
    })
    

    有关 HTML 脚本标签 herehere 的更多信息。

    如果您想将此脚本保留在外部,则可以使用它来定义一个以 {{GraphData}} 作为参数的函数,如下所示:

    function graphData(gd) {
      var chart = AmCharts.makeChart("chartdiv", {
        "graphs": [{
        "id": "g3",
        "valueAxis": "v1",
        ...
        }],
        "Data" = gd  
      });
    }
    

    然后像这样在您的 HTML 文件中调用该函数:

    <script src="js/index2.js"></script>
    <script>
      graphData({{GraphData}})
    </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-14
      • 1970-01-01
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 2021-12-31
      • 2016-03-25
      相关资源
      最近更新 更多