我有
$('#Row1').html() = '<tr><td><input type="checkbox" /></td>'+
'<td>One</td>'+
'<td>Two</td>'+
'<td>Three</td>'+
'<td>Four</td>'+
'<td>Five</td>'+
'<td>Six</td>'+
'<td>Seven</td>'+
'<td>Eight</td>'+
'<td>Nine</td>'+
</tr>';
我想要访问除第一个单元格之外的所有值。
我可以使用$('#Row1').children().siblings().next().html()
访问,依旧每次添加next()
。
在大量单元格的情况下,是否有更有效的方法来执行此操作。
答案 0 :(得分:2)
首先,html的工作方式如下:
$('#Row1').html('<tr><td><input type="checkbox" /></td>'+
'<td>One</td>'+
'<td>Two</td>'+
'<td>Three</td>'+
'<td>Four</td>'+
'<td>Five</td>'+
'<td>Six</td>'+
'<td>Seven</td>'+
'<td>Eight</td>'+
'<td>Nine</td>'+
'</tr>');
即:这是一个功能。
然后,要回答您的问题,您可以使用.not()
:
$('#Row1').children().not(':first').html();
但是,孩子们选择tr
。所以你真的想要:
$('#Row1').find('td').not(':first').html();
答案 1 :(得分:2)
<强> http://jsfiddle.net/dr2cs/2/ 强>
$(document).on('click','.check',function(e) {
if($(this).is(':checked')) {
$('#Row1').find('td:gt(0)').each(function(){
$('#values').append($(this).text()+'<br />');
})
} })
var domnode = '<tr><td><input type="checkbox" class="check" /></td>'+
'<td>One</td>'+
'<td>Two</td>'+
'<td>Three</td>'+
'<td>Four</td>'+
'<td>Five</td>'+
'<td>Six</td>'+
'<td>Seven</td>'+
'<td>Eight</td>'+
'<td>Nine</td>'+
'</tr>'; $('#Row1').html(domnode);
尝试这样的事情;)
答案 2 :(得分:0)
首先你必须使用
$('#Row1').html('<tr><td><input type="checkbox" /></td>'+
'<td>One</td>'+
'<td>Two</td>'+
'<td>Three</td>'+
'<td>Four</td>'+
'<td>Five</td>'+
'<td>Six</td>'+
'<td>Seven</td>'+
'<td>Eight</td>'+
'<td>Nine</td>'+
'</tr>');
要访问所有单元格,您需要先做
$("#Row1 td:not(:first)").each(function(){
console.log($(this).html());
});
答案 3 :(得分:0)
答案 4 :(得分:0)
在没有进一步遍历的单个选择器中,您可以执行此操作:
$('#Row1 tr td:not(tr td:first)');
答案 5 :(得分:0)
您可以使用基于索引的选择器:gt(0)
来获取单元格,然后使用each()
迭代它们:
$('#Row1 td:gt(0)').each(function(){
console.log($(this).html())
});