为什么TABLE通过 DATASRC 绑定一个XML 文件后,无法删除TABLE 中的TR 对象??? 第一次看到这么搞~~学习了~~~绑定了数据不能删有什么奇怪?能删就不叫绑定了~~~你试试改xml里面的内容看有没有变~~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <script>function fnClearTable(){ var table = document.getElementById("tableOne"); try { for(var i=table.rows.length-1;i>=1;i--) { table.rows[i].removeNode(true); } }catch(e) { alert(e.name+e.message); }}</script> 楼上的强!!!但能否解释一下,为什么通过table.deleteRow(i); 删除不掉呢??? 个人认为deleteRow应该是要把这个对象删除掉,对象可能已经不存在与文档对象中了,因为这个方法没有返回值。removeNode是把这个对象移除,但是这个对象还是存在的,这个方法有返回值,返回的就是移除的对象。<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><xml id='globalDoc' ><root><info><id>882</id><datepart>07071</datepart><firstNumber>9</firstNumber><secondNumber>8</secondNumber><thirdNumber>4</thirdNumber><fullNumber>984</fullNumber><totalNumber>21</totalNumber></info><info><id>881</id><datepart>07070</datepart><firstNumber>4</firstNumber><secondNumber>4</secondNumber><thirdNumber>1</thirdNumber><fullNumber>441</fullNumber><totalNumber>9</totalNumber></info></root></xml><HTML><HEAD><TITLE> New Document </TITLE><script>function fnClearTable(){var table = document.getElementById("tableOne");for(var i = table.rows.length - 1; i >= 1; i--){ //table.deleteRow(i); trt = table.rows[i].removeNode(true);//alert(trt);}}</script></HEAD><BODY onload="fnClearTable()"><table width="100%" datasrc='#globalDoc' id='tableOne' border="0" cellpadding="3" cellspacing="1" bgcolor="DDDEC8"> <thead align="middle" bgcolor="FAFAF1"> <th><div align="center">期数</div></th> <th><div align="center">号码</div></th> <th><div align="center">和数</div></th> </thead><tbody><tr><td><div align="center" dataFld='datepart'></td><td><div align="center" dataFld='fullNumber'></td><td><div align="center" dataFld='totalNumber'></td></tr></tbody> </table></BODY></HTML><script>//fnClearTable();</script>看看这样改后的现象。上面删除正常应该是因为table正在加载数据,但是数据被移除了,所以,就什么数据也加载不到了。 js中循环 回调函数。。怎样让函数执行完之后再循环下一条呢???? Jquery 显示隐藏Div逻辑问题 求大神指教 图片转为字节码传到客户端,如何显示为图片 EXTJS, 火狐和IE的兼容问题。 关于数字排序问题 诚心求一正则表达式 JS打开WORD的问题请教: 请教简单的参数传递! 父子窗口特难问题。。。。。好多分! [求救]如何屏蔽、恢复javascript中的事件处理函数?[求救] 优化string的问题 谁有办法用正则把字符替换成编码么
function fnClearTable()
{
var table = document.getElementById("tableOne");
try
{
for(var i=table.rows.length-1;i>=1;i--)
{
table.rows[i].removeNode(true);
}
}catch(e)
{
alert(e.name+e.message);
}
}
</script>
但能否解释一下,为什么通过table.deleteRow(i); 删除不掉呢???
removeNode是把这个对象移除,但是这个对象还是存在的,这个方法有返回值,返回的就是移除的对象。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<xml id='globalDoc' >
<root>
<info>
<id>882</id>
<datepart>07071</datepart>
<firstNumber>9</firstNumber>
<secondNumber>8</secondNumber>
<thirdNumber>4</thirdNumber>
<fullNumber>984</fullNumber>
<totalNumber>21</totalNumber>
</info>
<info>
<id>881</id>
<datepart>07070</datepart>
<firstNumber>4</firstNumber>
<secondNumber>4</secondNumber>
<thirdNumber>1</thirdNumber>
<fullNumber>441</fullNumber>
<totalNumber>9</totalNumber>
</info>
</root>
</xml>
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script>
function fnClearTable()
{
var table = document.getElementById("tableOne");
for(var i = table.rows.length - 1; i >= 1; i--)
{
//table.deleteRow(i);
trt = table.rows[i].removeNode(true);//alert(trt);
}
}
</script>
</HEAD>
<BODY onload="fnClearTable()">
<table width="100%" datasrc='#globalDoc' id='tableOne' border="0" cellpadding="3" cellspacing="1" bgcolor="DDDEC8">
<thead align="middle" bgcolor="FAFAF1">
<th><div align="center">期数</div></th>
<th><div align="center">号码</div></th>
<th><div align="center">和数</div></th>
</thead>
<tbody>
<tr>
<td><div align="center" dataFld='datepart'></td>
<td><div align="center" dataFld='fullNumber'></td>
<td><div align="center" dataFld='totalNumber'></td>
</tr>
</tbody>
</table>
</BODY>
</HTML>
<script>
//fnClearTable();
</script>
看看这样改后的现象。上面删除正常应该是因为table正在加载数据,但是数据被移除了,所以,就什么数据也加载不到了。