<div id="m101">
<table class="tablec" width="80%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><a href="#"><span class="name">My Name</span></a></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><a href="#"><span class="clickme">clickme</span></a></td>
</tr>
</table>
</div>
如果点击clickme,我应该使用哪个选择器来捕获“name”的内容?这些表中有多个具有相同的类,但周围的div是唯一的。每次名称都不同。
到目前为止,我一直在与父母,父母和最接近的职能部门进行实验。
$(".clickme").click(function(){
var name = $(this).closest('.name').text();
alert(name);
});
答案 0 :(得分:2)
答案 1 :(得分:1)
您无法使用.name
选择closest()
,因为它不是祖先。你需要选择一个共同的祖先,例如table
,然后在树下工作到.name
元素。
$(".clickme").click(function(){
var table = $(this).closest("table");
var name = table.find('.name').text();
alert(name);
});
您可以使用
将其放在一行中$(".clickme").click(function(){
var name = $(this).closest("table").find('.name').text();
alert(name);
});
答案 2 :(得分:1)
您可以遍历树,直到找到<table>
:
var name = $( this ).closest( 'table' ).find( '.name' ).text();
答案 3 :(得分:1)
这为我做了工作
function() {
$(".clickme").click(
function(e) {
alert($(this).parents("div").find(".name").html());
}
);
}
答案 4 :(得分:0)
最简单的答案 -
$(document).ready(function(){
$('.clickme').click(function(){
var getName = $('.name').text();
alert(getName);
});
});