如何为 django 模板中的标签创建动态 id

Posted

技术标签:

【中文标题】如何为 django 模板中的标签创建动态 id【英文标题】:How to create dynamic ids for tags in django templates 【发布时间】:2013-04-02 16:48:56 【问题描述】:

背景:我有一个动态表(因为直到运行时我才知道它的大小/元素),我正在尝试使用 javascript 函数填充文本区域。为此,我计划将文本区域的 id 以及我想要填充它的值传递到 javascript 函数中。

问题是我无法为每个文本输入字段创建动态 id 值。这就是我目前尝试这样做的方式:

   % with "input_"|add:applicant.id as idName %
        <input id=" idName " type="text" value="">
        <input type="button" hidden="TRUE" onclick="">
         idName 
        <script>
            putTags( idName ,  tags );
        </script>
   % endwith %

函数 putTags() 将填充文本输入的内容。不幸的是,这不起作用,因为它将每个人的 id 分配给“input_”而不附加申请人.id 的值(我已经检查过,申请人.id 每次迭代都有一个正确的 id)。难道我做错了什么?有没有更简单的方法来创建这些唯一 ID?

【问题讨论】:

【参考方案1】:

你可以试试这样的

<input id="input_ applicant.id " type="text" value="">
<input type="button" onclick="putTags('input_ applicant.id ',  tags );">

【讨论】:

这是我尝试的第一种方法(尽管我希望最初填充值,而不是在单击按钮时,所以我只是调用函数)。由于某种原因,它没有正确附加申请人.id。它只是使所有文本框的 id 为“input_”。 那你为什么不直接做&lt;input ... value=" tags "&gt;?这听起来不像是需要不必要的 javascript... 我使用函数来格式化标签。如果我只是做 value=" tags " 它看起来像这样:“[, ]” 我希望它只是说“Apple, Orange” 你应该可以做到 tags|join:", " 哇,你是我的英雄。谢谢!

以上是关于如何为 django 模板中的标签创建动态 id的主要内容,如果未能解决你的问题,请参考以下文章

如何为 django 模板中的单个按钮的 for 循环中的按钮提供唯一 id?

如何为 Django 对象创建自定义过滤器标签?

如何为 django 中的每个匿名用户提供一些唯一的 id

如何为 DJANGO 中动态创建的 URL 设置 URL 别名?

在 django 中使用 mailsnake 使用模板 id 动态创建活动

如何为其他模板的表单显示和提交编写基于 Django 类的视图?