我正在尝试用jquery和我的表单做一些有趣的事情。这一切归结为能够根据特定属性将元素组合在一起。我有一个带有大量选项的多个复选框,它生成以下示例输出:
<label for="xyz-nn">
<input type="checkbox" value="nn" id="xyz-nn" name="xyz[]">Doodle
</label>
想象很多次。 Anywho,我想为每个复选框添加一个具有唯一值的属性,但是使用setAttrib(“attributeName”,“valueN”)将属性设置为最后一个值而不是每个复选框的新值。
问题是:如何为每个选项设置属性的唯一值?
答案 0 :(得分:2)
这样做有点无用。
我不能为每个多重选项设置不同的属性 - 最后一个将始终覆盖现有属性。所以我不得不在复选框的文本周围添加一个类。当没有明确的方法时,说起来容易做起来难。
首先,我们必须禁用转义。为此,我们必须将escape属性设置为boolean false:
$ element-&gt; setAttrib('escape',false);
这允许我们放入我们自己的特殊品牌html。
$ element-&gt; addMultiOption($ object-&gt; id,'&lt; span class =“'。$ otherObject-&gt; id。'”&gt;'。$ object-&gt; name)。 '&LT; /跨度&GT;';
选项的输出类似于:
<label for="object-1">
<input type="checkbox" value="1" id="object-1" name="objects[]" />
<span class="food">Object One</span>
</label>
现在每个选项都有一个唯一的,我可以按照我想要的方式对它们进行分组:)