【问题标题】:Pass variable to Javascript file将变量传递给 Javascript 文件
【发布时间】:2014-09-30 21:03:39
【问题描述】:

我正在使用 Django 和 jqGrids,并且正在尝试自动化网格的构建过程。有一个问题,我想不出解决办法。

我有一个 Javascript 文件,包含在我的 html 页面的标题中,grid.locale-en.js,其中包含出现在 jqGrid 框中的所有字符串。

<script src="{% static 'project/grid.locale-en.js' %}"></script>

我想向这个文件传递一个具有网格名称的 Django 变量。

这样,我可以有我想要的mutch网格,我只需要一个网格的代码。 这将用于更改以下字段。

edit: {
        addCaption: "Add Product",
        editCaption: "Edit Product",

感谢您的帮助!

【问题讨论】:

    标签: javascript jquery python django templates


    【解决方案1】:

    两种简单的方法是:

    1. 你可以让 django 渲染你的 javascript

    2. 您可以在 django 模板中设置一个全局 JS 配置变量,然后您的 JS 文件可以查找该变量。

    在 Django 模板中

    <script type="text/javascript">
    var CONFIG = {};
    CONFIG.GRID_NAME = "{{ your name }}";
    </script>
    

    然后在你的 js 文件中

    您可以检查以确保设置了 CONFIG.GRID_NAME 并正确使用它。

    【讨论】:

    • 你只是有不必要的var 属性。否则,你是对的。发现!谢谢!
    【解决方案2】:

    假设你有一个容器 div

    <div id="jq-grid-container" data-my-column="{{ variable here }}"></div>
    

    然后你在哪里设置你的 jQGrid,你可以用 获取你的变量名

    var myColumn = $('#jq-grid-container').data('my-column');
    

    【讨论】:

      猜你喜欢
      • 2015-02-12
      • 2018-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-23
      相关资源
      最近更新 更多