循环遍历一个 div 标签内所有的复选框。

5
我需要循环遍历所有位于id为#abc123的div标签内的复选框。
我该如何实现呢?
$("#abc123").foreach( ???? )

更新 我的html行如下:

<tr>
<td><input .../> </td>
<td>234</td>

</tr>

我需要将<td>的值添加到复选框的ID中。我应该获取其父元素,然后以某种方式获取其祖先元素吗?
4个回答

9
$("#abc123 input[type=checkbox]").each(function()
     {

     });

更新:

好的,让我们看看我是否理解了这个问题。假设:

<tr> 
<td><input .../> </td> 
<td>234</td> 
</tr>

你希望的结果是(实际上):
<tr> 
<td><input id="abc234" .../> </td> 
<td>234</td> 
</tr>

$("td input[type=checkbox]").each(function()
{
     var id = $(this).next("td").text();
     $(this).attr("id", "abc"+ id);
});

看我的更新,只需要使用.parent(),然后以某种方式遍历到下一个元素即可吗? - Blankman

5
$("#abc123 input[type=checkbox]").each(function() {
    $(this).dosomething();
});

0

使用onkeydown事件... 我建议使用制表键,即keycode "9"

$(document).keydown(function(e){
  if(event.keyCode == '9'){ 
  ... 
}

if 语句 内部,您需要一个 嵌套的 if 语句 来检查哪个元素处于焦点状态,然后将焦点分配给下一个元素,就像这样:

document.div.id.focus();

0

你的代码中没有标记出 #abc123 的位置。此外,<td> 标签有任何标识吗?以下可能有效。

$("#abc123 input:checkbox").each(function(i) {
    id = $(this).closest('td').next('td').text();
    $(this).attr('id', id);
});

我不确定你的<div id="abc123"><td>中有多深,所以我使用了closest()方法来获取单元格包装器。如果它只有一层深度,即在你的代码中没有<div>,那么你可以直接使用parent()。祝好运。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接