确定,
以下是例子:
<table>
<tr>
<td>
<type="button" id="mybutton" value="insert">
</td>
<td>
<textarea>My Text</textarea>
</td>
</tr>
</table>
当我点击我的按钮时,我需要更改textarea值。该值将来自一个set变量。此代码没有其他ID或类可供参考。所以我有以下
jQuery('#mybutton').click(function(){
jQuery(this).parent().next()...????;
});
这会让我进入下一栏,但我不知道如何从那里选择textarea
。
我尝试child()
,另一个next()
,但没有运气。
答案 0 :(得分:3)
要在jQuery中选择子元素,我们使用.children()
:
jQuery('#mybutton').click(function(){
jQuery(this).parent().next().children().val(some_variable);
});
请注意,这将选择textarea
的所有同级元素,除非您在textarea
函数调用中添加.children()
作为选择器:.children('textarea')
您还可以使用.closest()
和.find()
:
jQuery('#mybutton').click(function(){
jQuery(this).closest('tr').find('textarea').val(some_variable);
});
.closest()
找到与选择器匹配的第一个祖先元素,并且find,在根选择的后代元素中找到选择器。
ya的一些文档:
.closest()
:http://api.jquery.com/closest .find()
:http://api.jquery.com/find .children()
:http://api.jquery.com/children 答案 1 :(得分:1)
如果此表可能在将来发生变化,您不希望变得模棱两可。以下是您想要的更具体的内容:
$(this).closest('table').find('textarea').val('your val');
更多信息:
答案 2 :(得分:0)
尝试使用以下内容:
jQuery(this).parent().next().find('textarea').val('CHANGE VALUE');;
答案 3 :(得分:0)
有很多方法可以实现同样的目标。以下是一个
$(this).parent().siblings().find('textarea').val("New Text");