我真的很困惑的行爲。任何幫助將不勝感激。我有一個簡單的表,它使用相同的JQuery調用的行爲不同。表JQuery切片刪除
<table class="PrintTable">
<tr>
<td>
<table>
<thead>
<tr><th>Type Of Transaction</th></tr>
</thead>
<tbody>
<tr>
<td>Name</td>
</tr>
<tr>
<td>Age</td>
</tr>
</tbody>
</table>
</td>
<td>
<table>
<thead>
<tr><th>2006</th></tr>
</thead>
<tbody>
<tr>
<td>Andi</td>
</tr>
<tr>
<td>25</td>
</tr>
</tbody>
</table>
</td>
<td>
<table>
<thead>
<tr><th>2007</th></tr>
</thead>
<tbody>
<tr>
<td>tom</td>
</tr>
<tr>
<td>26</td>
</tr>
</tbody>
</table>
</td>
</tr>
</table><script>$('table.PrintTable >tbody>tr>td').slice(-2).remove();</script>
上面的jQuery刪除了期望的最後兩列。
但是,如果我改變了代碼: -
function getBody(element)
{
var divider=2;
var originalTable=element.clone();
var newTable = ($(originalTable).children('tbody').children('tr').children('td')).slice(-1).remove();
return $('<div>').append(newTable).html();
}
getBoby($('table.PrintTable'))
上面的代碼只顯示最後一列。爲什麼這樣?我跳,我能夠正確地提到我的問題。任何幫助將在第一jQuery的呼叫理解
你想要結果是什麼?假設以上是之前的版本,你可以發佈一個「之後」(或者你想從`getBody`返回的內容)嗎? (另外,對於任何想玩小提琴的人:http://www.jsfiddle.net/bradchristie/8W5Cg/) – 2011-01-19 16:39:01