<script>
$(document).ready(function(e){
$('button').click(function(){
$(this).closest('.b').val(1);//NOT WORKING
$(this).next().next('.b').val(1);//WORKS
});
});
</script>
<button>Click me</button>
<input class="a" type="text" />
<input class="b" type="text" />
<button>Click me 2</button>
<input class="a" type="text" />
<input class="b" type="text" />
我尝试选择最接近的类,我尝试过最近的(),但它不起作用。
我试过next()。next(),它有效,有人为什么?
答案 0 :(得分:1)
根据最近的文档
对于集合中的每个元素,通过测试元素本身并遍历DOM树中的祖先来获取与选择器匹配的第一个元素。
和输入是单击按钮的兄弟。
你也可以使用:
$(this).nextAll('.b:eq(0)').val(1);
即使$(this).next().next().val(1)
也可以使用$(this).next().next('.b').val(1)