求遍历表格元素td的快速方法(有2000个td)!在线(19:00--21:00) 呵呵,duhastfaust() ,太谦虚。我一菜鸟,很多不懂!其实2000个td是可以避免的,无奈客户要求做成大表,故麻烦各位。自己一顶 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <table id="tb1"><tr> <td>a</td> <td>b</td></tr><tr> <td>c</td> <td></td></tr><tr> <td>d</td> <td>e</td></tr></table><table><tr> <td>1</td> <td>2</td></tr><tr> <td>3</td> <td>4</td></tr><tr> <td>5</td> <td>6</td></tr></table><script language="JavaScript"><!--var tdArr=document.getElementById("tb1").getElementsByTagName("td")for(i=0; i<tdArr.length;i++){if(tdArr[i].childNodes.length!=0)alert(tdArr[i].childNodes[0].nodeValue)}//--></script> 哦, bzscs(沙虫),不是要这个啊,我想知道怎么遍历td速度最快。我在遍历td的时候速度太慢了 楼主,我更菜了!! 你是要一次全部遍历?? 还是有条件?bzscs(沙虫): 你的算法大家都知道,有没有更好的? var tab = document.all.tableId;var lenR= tab.rows.length; //这里就取好值会快些for (var i=0; i<lenR; i++){ var lenC = tab.rows[i].cells.length; for (var j=0; j<lenC; j++) { //tab.rows[i].cells[j].bgColor = "red"; }} 呵呵,我现在使用的方法同hrong(黄蓉 【九阴真经】) 谢谢你。 table.cells直接遍历,2000个cpu肯定100%,慢是没办法的<TABLE id="d"><TR> <TD>1</TD> <TD>2</TD></TR><TR> <TD>3</TD> <TD>4</TD></TR><TR> <TD>5</TD> <TD>6</TD></TR><TR> <TD>7</TD> <TD>8</TD></TR></TABLE><SCRIPT LANGUAGE="JavaScript">for (var i=0;i<d.cells.length;alert(d.cells[i++].innerText))</SCRIPT> var tab=document.all.tableid; var td=tab.all.tags("td"); for(i=0;i<td.length;i++){ //输入控制代码 }总是要一个一个的找,所以不知道这种方法能不能好一点 var a = document.all.tableId.getElementsByTagName("TD");var len = a.length;for (var i=0; i<len; i++){ //.....} 三种不同的方法,运行时间分别是:1653、630、230http://www1.ok3.net/temp/allTd.html-2200个td 呵呵,今天我也去测试了一下,var a = document.all.tableId.getElementsByTagName("TD");var len = a.length;for (var i=0; i<len; i++){ //.....}这种方法最好!!!谢谢各位!!!马上解分 点击iframe里的内容为什么没有弹出 请大家介绍一本JS的好书。 如何动态在原有table中添加多列 关于弹出框中Iframe的性能问题 javascript点击切换图片的问题, 在线急等! 解决了马上散分!!! 关于checkbox 求教:如果在网页载入时自动弹出加为首页对话框,等待... 怎样添加表格的行!!!!!!! 在Javascript中使用ActiveX的问题 请帮助.... Javascript print方法打印的问题继续提问:打印页面页脚的url以及页眉的页数如何去除? 怎样用JavaScript清除IE的历史记录(给分88)在线等
<tr>
<td>a</td>
<td>b</td>
</tr>
<tr>
<td>c</td>
<td></td>
</tr>
<tr>
<td>d</td>
<td>e</td>
</tr>
</table>
<table>
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>5</td>
<td>6</td>
</tr>
</table>
<script language="JavaScript">
<!--
var tdArr=document.getElementById("tb1").getElementsByTagName("td")
for(i=0; i<tdArr.length;i++){if(tdArr[i].childNodes.length!=0)alert(tdArr[i].childNodes[0].nodeValue)}
//-->
</script>
我想知道怎么遍历td速度最快。
我在遍历td的时候速度太慢了
bzscs(沙虫): 你的算法大家都知道,有没有更好的?
var lenR= tab.rows.length; //这里就取好值会快些
for (var i=0; i<lenR; i++)
{
var lenC = tab.rows[i].cells.length;
for (var j=0; j<lenC; j++)
{
//tab.rows[i].cells[j].bgColor = "red";
}
}
谢谢你。
<TR>
<TD>1</TD>
<TD>2</TD>
</TR>
<TR>
<TD>3</TD>
<TD>4</TD>
</TR>
<TR>
<TD>5</TD>
<TD>6</TD>
</TR>
<TR>
<TD>7</TD>
<TD>8</TD>
</TR>
</TABLE>
<SCRIPT LANGUAGE="JavaScript">
for (var i=0;i<d.cells.length;alert(d.cells[i++].innerText))
</SCRIPT>
var td=tab.all.tags("td");
for(i=0;i<td.length;i++){
//输入控制代码
}总是要一个一个的找,所以不知道这种方法能不能好一点
var len = a.length;
for (var i=0; i<len; i++)
{
//.....
}
http://www1.ok3.net/temp/allTd.html
-
2200个td
var a = document.all.tableId.getElementsByTagName("TD");
var len = a.length;
for (var i=0; i<len; i++)
{
//.....
}
这种方法最好!!!
谢谢各位!!!马上解分