gpt4 book ai didi

javascript - 使用 jQuery 将元素名称分配给多个元素的名称作为前缀

转载 作者:行者123 更新时间:2023-12-02 15:43:02 25 4
gpt4 key购买 nike

我有一个允许动态生成内容的网页,我想在创建动态内容名称时/在发布之前在可接受的情况下为所有动态内容名称添加隐藏元素的名称前缀。

这些动态添加的文本框所在的类在整个页面中共享,因此无法轻松识别。

我无法让它工作,我需要检查它们是否有前缀,如果没有,请添加前缀

fiddle :

https://jsfiddle.net/ycjrunja/2/

jQuery

$(// can't use class).attr(); // do I need to use this method for each <td> ?

当前生成的标记:

<input type=hidden name="main[xyz]" />
<input type=button name="addRow" />
<table>
<tr>
<td><input type=text name="tb1r1" /></td>
<td><input type=text name="tb2r1" /></td>
</tr>
<tr>
<td><input type=text name="tb1r2" /></td>
<td><input type=text name="tb2r2" /></td>
</tr>
</table>

理想的生成标记

    <input type=hidden name="main[xyz]" />
<input type=button name="addRow" />
<table>
<tr>
<td><input type=text name="main[xyz]tb1r1" /></td>
<td><input type=text name="main[xyz]tb2r1" /></td>
</tr>
<tr>
<td><input type=text name="main[xyz]tb1r2" /></td>
<td><input type=text name="main[xyz]tb2r2" /></td>
</tr>
</table>

最佳答案

使用这个:

$("td input").each(function(){
$(this).attr("name",$("input:hidden").attr("name")+$(this).attr("name" ));
});

说明:

第一行迭代所有 <input>里面的元素 <td>元素。

第二行连接 name <input type = "hidden>"的与 <input>元素的name正在迭代并将其分配给 name当前迭代元素的。

最后一行结束函数并 each()方法。

The <input> elements must have a name before this script gets executed. The <script> tag must be placed just before the closing body tag or use window.onload instead, to confirm that the DOM has loaded.

关于javascript - 使用 jQuery 将元素名称分配给多个元素的名称作为前缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32437201/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com