我有以下 HTML 代码:
<td>
<input type="text" size="40" value="" name="related_image" id="related_image">
<input type="button" class="button addImage" value="Get image url">
</td>
<td>
<input type="text" size="40" value="" name="alternative_image" id="alternative_image">
<input type="button" class="button addImage" value="Get image url">
</td>
我需要弄清楚我单击了哪个按钮,然后将一些文本添加到最近的输入文本字段。
例如。如果我点击第一个 <td>
中的按钮,然后我需要在related_image
中输入一些文本文本字段。
我尝试过以下 jQuery,但它不起作用:
jQuery('.addImage').click(function() {
var tmp = jQuery(this).closest("input[type=text]").attr('name');
alert(tmp);
});
(我只是检索输入名称进行测试。)
我想我可能必须使用find
和/或siblings
。但我不太确定如何。
感谢任何帮助。
编辑
我刚刚设法使用此代码
addImageEvent = jQuery(this).prevAll("input[type=text]:first")
正在使用prevAll
一个糟糕的选择?
最佳答案
尝试:
var tmp = $(this).siblings(":text").attr("name");
您使用的 closest()
方法查找最近的祖先,这不是您想要的。
关于jquery - 如何使用 jQuery 找到最接近的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3623103/