假如:一段普通的程式碼:
其中gift_list為一個table的idvar giftBody = document.getElementById("gift_list").getElementsByTagName("tbody")[0];
var giftTrs = giftBody.getElementsByTagName("tr");
for (var i=0;i<giftTrs.length;i++)
{
giftTrs[i].removeChild(giftTrs[i]);
}
那麼這時候只會刪除第一行,因為當刪除了一個之後,行的位置會向前移動一位。
giftTrs.length也會相應減一。
因此正確的操作方法是:
var giftBody = document.getElementById("gift_list").getElementsByTagName("tbody")[0];
var giftTrs = giftBody.getElementsByTagName("tr");
var len = giftTrs.length; //需要將giftTrs.length的length屬性儲存起來
for (var i=0;i<len;i++)
{
giftBody.removeChild(giftTrs[0]);
}