2016-09-28 62 views
0

我有一個簡單的jQuery到列追加到表jQuery是第一個,而不是第一個在同一行,可能嗎?

jQuery('#tb tr:first').append('<td>manufacturer_part_number</td>'); 

這將首先<tr><td>追加到表,但我也希望分配不同的TD的同時<td>不是第一個孩子,我可以做這樣的事嗎?

jQuery('#tb tr:first').append(
    '<td>manufacturer</td>' 
).not(
    '#tb tr:first' 
).append(
    '<td>&nbsp</td>' 
); 

如果不可能,有沒有辦法處理最小代碼?

+0

放HTML代碼。 –

回答

1

不,當您選擇第一行,你可以就好像它是整個表元素上不連鎖,你必須做它分開

jQuery('#tb tr:first').append('<td>manufacturer_part_number</td>'); 
jQuery('#tb tr:not(:first)').append('<td>&nbsp;</td>'); 

你當然可以選擇該表第一,然後回去跟end()

jQuery('#tb').find('tr:first').append('<td>manufacturer</td>').end() 
      .find('tr:not(:first)').append('<td>&nbsp;</td>'); 

或者使用append()有回調

jQuery('#tb tr').append(function(i) { 
    return $('<td />', { text : i === 0 ? 'manufacturer' : '&nbsp;' }); 
}); 
1

您應該循環其他行

$('#tb tr:first').append('<td>manufacturer_part_number</td>'); 
$('#tb tr:not(:first)').each(function() { 
    $(this).append('<td>&nbsp;</td>'); 
}); 
+0

'#tb tr:not(:first'''''''''''''''s this selector is wrong guy。You forget to close it。 –

+0

謝謝,修復它 – LinkinTED

0

你可以做到這一點通過使用next()end()

jQuery('#tb').find('tr:first').append('<td>manufacturer</td>').end().find('tr:first').next().append('<td>&nbsp</td>'); 
0

你也可以用這種方式:

$('#tb tr').each(function(i) { 
    if(i===0){ 
    $(this).append('<td>manufacturer_part_number</td>'); 
    } else { 
    $(this).append('<td>&nbsp;</td>'); 
    } 
}); 
相關問題