我在表中获取tr的id的代码无效。
我从mysql db中检索了表的数据并填充了表。但是为了更好更容易阅读,我们假设我在这里有这个表:
<table>
<tr id = "1" class = "tablerow">
<td> Your awesome </td>
</tr>
<tr id = "2" class = "tablerow">
<td> Your great </td>
</tr>
<tr id = "3" class = "tablerow">
<td> Your amazing </td>
</tr>
</table>
并且还有这个js:
$(".tablerow").click(function(event){
var id = this.id;
alert(id);
});
但是它没有工作,它只是警告一个空字符串。为什么呢?
答案 0 :(得分:1)
尝试将您的代码更改为下一个
$(".tablerow").click(function(event){
var clicked = $(this),
id;
if(clicked.attr('id')){
id = clicked.attr('id');
}
else{
id = clicked.parent().attr('id');
}
alert(id);
});
答案 1 :(得分:1)
假设您的页面上只有一个表:
document.getElementsByTagName("tr")[index].id;
但是,你最好给你的表一个id,并得到你的行:
<table id="tableId">
<tr id = "1" class = "tablerow">
<td> Your awesome </td>
</tr>
<tr id = "2" class = "tablerow">
<td> Your great </td>
</tr>
<tr id = "3" class = "tablerow">
<td> Your amazing </td>
</tr>
</table>
js code:
var table = document.getElementById("tableId");
var row = table.rows[index];
console.log(row.id);
答案 2 :(得分:1)
你应该使用:
Button
答案 3 :(得分:0)
试试这段代码,希望它对您有所帮助:
$(document).on("click",".tablerow",function(event){
var id = this.id;
alert(id);
});
如果仍然无法正常工作,请尝试检查您的jquery是否已声明。像这样:<script src="../js/jquery-1.11.1.min.js"></script>
享受!