].compKey.joinDate" /> ].compKey.addr-6ren">
gpt4 book ai didi

javascript - 如何使用 jquery 有效地搜索具有中间有索引的名称属性的输入?

转载 作者:行者123 更新时间:2023-11-28 01:49:45 25 4
gpt4 key购买 nike

我有这样的 JSP 代码:

<% int idx=0; %>
<logic:iterate id="emp" name="myForm" property="myList" indexId="xdi">
<tr class="myClass">
<td>
<input type="hidden" name="emp[<%=idx%>].compKey.id" />
<input type="hidden" name="emp[<%=idx%>].compKey.joinDate" />
<input type="hidden" name="emp[<%=idx%>].compKey.address" />
<input type="hidden" name="emp[<%=idx%>].compKey.house.address" />
<input type="hidden" name="emp[<%=idx%>].name" />
<input type="hidden" name="emp[<%=idx%>].fakeaddress" />
<input type="hidden" name="emp[<%=idx%>].address" />
</td>
</tr>
<% idx++; %>
</logic:iterate>

我想使用 jQuery 搜索并迭代名称为“emp[..].address”的输入标记。如果我尝试这样做:

$('tr.myClass input[name$=address]').each(function(index){
alert($(this).val());
});

它还将迭代 name="emp[..].compKey.address"、"emp[..].compKey.house.address"、"emp[..].fakeaddress"的输入标记。是否可以在中间使用通配符进行搜索,例如:emp[*].address ?

最佳答案

更改您的代码:

$('tr.myClass input[name$=address]').each(function(index){
alert((this).val());
});

至:

$('tr.myClass input[name$=address]').each(function(index){
alert($(this).val());
});

您的代码中缺少 $:

alert($(this).val());
____^____ // missing in your code

更新#1

因为您只想使用 name ="emp[..].address" 而不是 emp[..].compKey 迭代 input 标记.address,您可以这样做:

var $address = $('tr.myClass input[name$=address]:not(input[name$="compKey.address"])');
$address.each(function(index){
alert($(this).val());
});

更新#2

如果您有很多以相同名称结尾的元素,您可以这样做:

var $address = $('tr.myClass input[name$="].address"]');
$address.each(function(index){
alert($(this).val());
});

关于javascript - 如何使用 jquery 有效地搜索具有中间有索引的名称属性的输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19829622/

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