html表在代码
下<table>
<thead>
<tr>
<th>
<a href="#this" class="btn" id="edit">edit</a>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<textarea></textarea>
</td>
</tr>
</tbody>
</table>
如何在#edit
按钮点击事件中获取textarea?
$(function() {
$("#edit.btn").click(function() {
});
});
我在尝试:
$(this).closest('tbody tr th textarea')
它不能正常工作。
如何在按钮点击事件中获得textarea
?
答案 0 :(得分:1)
你需要到达你的按钮(#edit
)与目标元素(textarea
)的第一个共同祖先。你可以这样做:
$("#edit.btn").click(function() {
var $textarea = $(this).closest('table').find('textarea');
});
或者,您可以为textarea
提供一个标识符(例如... 'id'
属性?),并直接定位,如下所示:
$("#edit.btn").click(function() {
var $textarea = $('#your-textarea-id');
});
最后,如果这是一个动态代码,并且您有多对button
&amp; textarea
,您可以将textarea
标识符放在button
元素上,如下所示:
<强> HTML 强>
<a href="#this" class="btn" id="edit" data-target="my-text-0">edit</a>
...
...
...
<textarea id="my-text-0"></textarea>
<强> JS 强>
$("#edit.btn").click(function() {
var $textarea = $('#'+$(this).data('target'));
});