3

我这里有两排桌子。当我单击第一个表行中的复选框时,我试图在下一个表行中定位跨度的 ID。我的代码中有一个警报,只是为了告诉我我成功了。

我所拥有的不起作用。单击第一行中的复选框时,我无法找出在下一个表格行中选择数据的方法。

<table>
<tr id="row-a">
<td>
    <input type="checkbox">
    <span>
        some text
    </span>
</td>
</tr>
<tr>
<td>
    <span id="target">
        some text
    </span>
</td>
</tr>
</table>

$(document).ready(function() {
   var myCheck = $("tr#row-a td input");

   myCheck.change(function(){
   var spanID = $("tr#row-a').next('tr').find('span').attr('id');
   alert(spanID);
   });
});
4

2 回答 2

6

尝试这个:

var myCheck = $("tr#row-a td input");
myCheck.change(function(){
    var spanID = $(this).closest('tr').next().find('span').attr('id');
    alert(spanID);
});

示例小提琴

于 2012-11-15T17:24:42.157 回答
2
$(document).ready(function() {
   var myCheck = $("tr#row-a td input");

   myCheck.change(function(){
   var spanID = myCheck.parents("tr").next().find('span').attr('id');
   alert(spanID);
   });
});

变化在这一行:

   var spanID = myCheck.parents("tr").next().find('span').attr('id');

执行以下操作:

  • 查找复选框的tr父级
  • 获取下一个兄弟节点(next tr
  • 发现span
  • 获取它的 id
于 2012-11-15T17:24:29.310 回答