【发布时间】:2018-07-06 06:16:37
【问题描述】:
我想知道如何在 html 中创建多个“相同”input type。我有一个网格,并且希望每一行都有一些选项。我想将label 应用于每个input type,但我遇到了如何在label 的for 属性中引用每个input type 的问题。由于for 使用id,并且我有多个相同input type 的实例,我将如何引用input type 而不会做一些不利的事情,例如id='button0'、id='button1'、id='button2' 和等等?
例如(为简单起见,代码被剥离,我使用kendo-ui 样式),
<div class="row">
<div class="col">
<p>This is a column</p>
<input type="checkbox" class="k-checkbox" id="select-this">
<label class="k-checkbox-label" for="select-this">Select this</label>
</div>
</div>
<div class="row">
<div class="col">
<p>This is another column</p>
<input type="checkbox" class="k-checkbox" id="select-this">
<label class="k-checkbox-label" for="select-this">Select this</label>
</div>
</div>
让两个元素具有相同的id(在本例中为id="select-this")是不明智的,for 似乎无法引用class。有没有更好的方法来使用一些工具,比如 jQuery,或者有解决方法吗?
【问题讨论】:
-
id应该是唯一的。所以只需设置一个独特的id并使其工作:-) -
@Lain 想象一个有 100 个复选框的案例。真的没有比
id='checkbox0',id='checkbox1'...id='checkbox99'更好的方法来生成这些输入元素吗? -
我明白你的意思了。
-
您是否考虑过模板化这些项目?如果您使用剑道的网格等,那么它们的模板很容易相处。我准备了一个简单的道场dojo.telerik.com/ocAVAWIr,它将为您动态识别项目
-
@DavidShorthose,这非常有用,感谢您的演示!我会更多地研究模板。
标签: javascript jquery html kendo-ui