我想点击"州"然后按"确定"我想在下一个链接中触发点击(" a")。
我正在使用:
$("[data-name='city']").on("click", function(){
$("#table").find("[data-name='city']").trigger("click");}
但这是最后一项。我知道find()将查找每个项目并最终停止。
我想知道如何在data-name =" city"的下一个链接中使用触发器。并避免去最后一个。
谢谢大家。
<table id="table">
<tr>
<td style="">
<a class="editable editable-click" href="javascript:void(0)" data-name="state" data-pk="113" data-value="18">My State 001</a>
</td>
<td style="">
<a class="editable editable-click" href="javascript:void(0)" data-name="city">City 001</a>
</td>
</tr>
<tr>
<td style="">
<a class="editable editable-click" href="javascript:void(0)" data-name="state" data-pk="113" data-value="18">My State 002</a>
</td>
<td style="">
<a class="editable editable-click" href="javascript:void(0)" data-name="city">City 002</a>
</td>
</tr>
<tr>
<td style="">
<a class="editable editable-click" href="javascript:void(0)" data-name="state" data-pk="113" data-value="18">My State 003</a>
</td>
<td style="">
<a class="editable editable-click" href="javascript:void(0)" data-name="city">City 003</a>
</td>
</tr>
</table>
答案 0 :(得分:1)
$("#table").find("[data-name='city']")
会选择data-name='city
中的所有#table
。点击$(this).closest('tr').find("[data-name='city']")
之后,您应该使用data-name='city'
查找data-name="state"
。
$('[data-name="state"]').click(function(){
$(this).closest('tr').find("[data-name='city']").click();
})
答案 1 :(得分:1)
使用第一个选择器,使其停在下一个城市元素上:
https://api.jquery.com/first-selector/
$('[data-name="state"]').click(function(){
$(this).closest('tr').find("[data-name='city']:first").click();
})
答案 2 :(得分:0)
试试这个
$("#table").find("a.editable-click:last").trigger("click");
此致
答案 3 :(得分:0)
$("#table").find("[data-name='city']").trigger("click");
将所有选择器与data-name='city'
匹配,您有多个选择器。它会触发所有这些,包括最后一个。
试试这个:
$("[data-name='state']").on("click", function(e){
$(this).closest("tr").find("[data-name='city']").trigger("click");
});