Javascript 如何基于表行下的另一个元素选择表行下的元素
我正在尝试根据delete.jpg的链接选择复选框。我试过这个:Javascript 如何基于表行下的另一个元素选择表行下的元素,javascript,Javascript,我正在尝试根据delete.jpg的链接选择复选框。我试过这个: <table> <tr class="odd"> <td><input id="cbox1" type="checkbox"></input></td> <td>some info here</td> <td>some info here</td> <td>some
<table>
<tr class="odd">
<td><input id="cbox1" type="checkbox"></input></td>
<td>some info here</td>
<td>some info here</td>
<td>some info here</td>
<td><a href="www.example.com"><img src="delete.jpg" alt="Delete"></img></a></td>
</tr>
<tr class="even">
<td><input id="cbox2" type="checkbox"></input></td>
<td>some info here</td>
<td>some info here</td>
<td>some info here</td>
<td><a href="www.example.com"><img src="delete.jpg" alt="Delete"></img></a></td>
</tr>
</table>
可悲的是,这是错误的,我认为这是阅读的图像是在输入
我需要的是确定复选框的ID,如果该行有delete.jpg图像。请记住,img包含在链接中
任何方法都会有帮助,但我需要在javascript上使用它。jQuery也是一种可能性。提前谢谢 您可以通过在包装
img
的a
元素上放置一个单击处理程序来实现这一点。从那里,您可以使用this
关键字引用单击的元素,然后使用closest()
获取父级tr
,最后使用find()
获取复选框
还要注意,您的HTML有几个错误<代码>
这里有一些信息
这里有一些信息
这里有一些信息
这里有一些信息
这里有一些信息
这里有一些信息
这应该可以解决您的问题
$(“img[alt='Delete'])。parent().parent().parent().find(“input”)以下是jQuery的神奇之处:
$('img[src="delete.jpg"]').each(function(){
var e = $(this);
var id = e.closest('tr').find('input').attr('id');
console.log( e, id );
});
// To store the id in image element:
window.id_list = [];
$('img[src="delete.jpg"]').each(function(){
var e = $(this); // image element
var id = e.closest('tr').find('input').attr('id');
e.data('myid', id);
id_list.push(id);
});
// to access
$('img[src="delete.jpg"]:first').data('id');
// or
console.log(id_list);
有多个
复选框
您需要什么?删除了OP不想要答案的标记,为什么jquery很容易做到这一点?:)谢谢但是在纯javascript中有答案吗?当然,但是为什么要用jQuery标记这个问题?很抱歉问了一个愚蠢的问题,但是如何在函数之外使用变量“id”?