u说的all.length,但如果table很少的话,可以用
var u=document.all.tags("table"); 
for(i=0;i<u.length;i++){ 
if(u[i].name.indexOf("n_")==0)alert(u[i].name)

解决方案 »

  1.   

    To:net_lover(孟子E章) 
       u是指document.all,而不是document.all.tags("table"),呵呵
    To: qiushuiwuhen(秋水无恨)
    我有试过这种方法了,但性能好象没有显著的提高,我估计是在执行u=document.all.tags("table"); 时,也是要全部对象遍历一遍,
    PS:
    后来我有试着把这些对象放在一个<div id=tt>里,但用tt.all.tags("tables")好象也没有什么改善,不知哪位有更好的方法?
      

  2.   

    性能的提高,不仅仅在遍历,还和你for中的代码有关。还有的方法就是,将表格搁到一个iframe中去
      

  3.   

    不知道你的代码是怎么分布的,如果你的table代码集中的话,比如都是连续的,你可以这样,会显著提高性能的:
    把表格放到div[唯一的ID]里,先取到这个div,然后取这里里面的TABLE。
    前提是:TABLE连续,或者TABLE所在区域比较集中都可以这么做。应该不会有性能的 影响。
      

  4.   

    To:qiushuiwuhen(秋水无恨)
       由于是在测试,我里面只有计时代码,所有不会有问题
    To:版主net_lover(孟子E章) 
    >后来我有试着把这些对象放在一个<div id=tt>里,但用tt.all.tags("tables")
    上面的回答应该就是你说的方法,条件也刚好满足,
    其实现在我只是想有没有什么方法可以直接得到以“某个字符(串)”开头的对象,就这么简单
      

  5.   

    不进行遍历好象不行,不知道你的名字ID是否是程序生成的,你可以用相同的Name="n" 属性来做,这样得到的是一个集合,只要是n开头的,都用相同的Name属性,应该还可以的
      

  6.   

    你有没有试着用XML什么的弄弄?可惜我XML不会啊
      

  7.   

    你有没有试着用XML什么的弄弄?可惜我XML不会,处理XML要比HTML快,感觉是这样
      

  8.   

    算了,结帐,多谢谢各位了,我估计可能是只能用遍历了,用xml是可以,但是在进行转换为html时反而使得程序更复杂
      

  9.   

    算了,结帐,多谢谢各位了,我估计可能是只能用遍历了,用xml是可以,但是在进行转换为html时反而使得程序更复杂
      

  10.   

    现在CSDN给分越来越难了,不过,怎么我给了分,信誉等级反而下降?