Javascript 在dom中获取元素
我想知道是否有一种方法可以使用每个“a”元素上的onclick事件获取表中每一行的id属性。我尝试过类似的方法,但总是第一个:Javascript 在dom中获取元素,javascript,jquery,Javascript,Jquery,我想知道是否有一种方法可以使用每个“a”元素上的onclick事件获取表中每一行的id属性。我尝试过类似的方法,但总是第一个: <table id="myTable" class="tablesorter"> <thead> <tr> <th class="header headerSortDown">Last Name</th> <th class="header">First Name</th&g
<table id="myTable" class="tablesorter">
<thead>
<tr>
<th class="header headerSortDown">Last Name</th>
<th class="header">First Name</th>
<th class="header headerSortUp">Email</th>
<th class="header">Due</th>
<th class="header">Web Site</th>
<th class="header">Del</th>
</tr>
</thead>
<tbody>
<tr class="tableContent" id="1">
<td>Smith</td>
<td>John</td>
<td>jsmith@gmail.com</td>
<td>$50.00</td>
<td>http://www.jsmith.com</td>
<td><a onclick="getid();">Del</a></td>
</tr>
<tr class="tableContent" id="2">
<td>Bach</td>
<td>Frank</td>
<td>fbach@yahoo.com</td>
<td>$50.00</td>
<td>http://www.frank.com</td>
<td><a onclick="getid();">Del</a></td>
</tr>
<tr class="tableContent" id="3">
<td>Doe</td>
<td>Jason</td>
<td>jdoe@hotmail.com</td>
<td>$100.00</td>
<td>http://www.jdoe.com</td>
<td><a onclick="getid();">Del</a></td>
</tr>
</tbody>
</table>
function getid(){
var id = $("a").closest(".tableContent").attr("id");
alert(id);
}
姓
名字
电子邮件
应得的
网站
德尔
史密斯
约翰
jsmith@gmail.com
$50.00
http://www.jsmith.com
德尔
巴赫
直率的
fbach@yahoo.com
$50.00
http://www.frank.com
德尔
雌鹿
杰森
jdoe@hotmail.com
$100.00
http://www.jdoe.com
德尔
函数getid(){
变量id=$(“a”).closest(.tableContent”).attr(“id”);
警报(id);
}
您没有传递所单击项目的引用。不过,我会避免使用内联事件处理程序(特别是在使用jQuery时),并执行以下操作:
$(document).ready(function() {
$('.tableContent a').click(function() {
var id = $(this).closest('.tableContent').attr('id');
alert(id);
});
});
为了完整起见,下面介绍如何使用内联事件处理程序:
Del
将HTML更改为:
<td><a onclick="getid(this);">Del</a></td>
谢谢你的回复。。我在函数getid(this){}@user1763639中得到了意外的标记:在
getid()
函数定义中,将this
的两个匹配项都更改为elem
或类似的内容<代码>函数getid(elem){var id=$(elem)。最近(…@CrazyTrain谢谢,修复了我的答案。
<td><a onclick="getid(this);">Del</a></td>
function getid(el) {
var id = $(el).closest(".tableContent").attr("id");
alert(id);
}