t1是td啊大哥...为什么不用dom的方法呢

解决方案 »

  1.   

    楼主不要忘了还有TBODY的..就算你不写..这个节点在table是一定有的..
      

  2.   

    不知道这样说你清楚了没有??<table id="b">
    <tr>
    <td>a</td>
    <td><input type="textbox" name="basicCon" style="width:60px" value="1"> </td>
    </tr>
    </table>
    <script>
    //ie对table的解释不同其他w3c浏览器,如ff的,他会把tbody标签加上,所以你代码回出错
    var toj=document.getElementById("b"); 
    alert(toj.outerHTML)//你输出table的所有代码就知道ie把tbody加上了
    //           tbody       tr         第2个td
    var t1  =toj.firstChild.firstChild.lastChild; alert(t1.innerHTML);//已经能得到 <input type="textbox" name="basicCon" style="width:60px" value="1"> //你的t1为td,当然没有value属性了
    alert(t1.value);  //为什么不是1,而是没定义类型啊 
    //====》
    alert(t1.firstChild.value) 
    //   tbody      tr
    toj.firstChild.lastChild; 
    //   tbody      tr
    toj.firstChild.firstChild; 为什么都是一样的?而不是2个不同的td里的元素?谢谢
    </script>
      

  3.   


    <table id="b">
    <tr>
    <td>a</td>
    <td><input type="text" name="basicCon" style="width:60px" value="1"> </td>
    </tr>
    </table><script type="text/javascript">
    var toj=document.getElementById("b"); 
    var t1  =toj.firstChild.firstChild.lastChild; 
    alert(t1.tagName);
    alert(t1.innerHTML);
    var t2 = t1.firstChild;
    alert(t2.value);
    </script>t1实际上不是你要的input,而是td。t1内的input(实际上是t2)才是你想要取值的东西
      

  4.   

    t1.innerHTML能得到那个对象啊,是不是忽略了TBODY?谢谢
      

  5.   

    哦,谢谢,以后对于table内取值的是不是用table的row,cell比较好
      

  6.   

    t1.innerHTML得到的是input这个tag,所以是有对象的,innerHTML指的是该元素的内嵌页面元素,所以有,但是如果你使用t1.value可就是指要获取该元素的value属性的值了,这个是两回事,value属性必须是写在元素中的,而不是其包含的页面元素
    不知道这么说楼主是否明白
      

  7.   

    大可不必:
    1. 首先的话,应该尽量减少对table的使用,如果能够替换,请尽量使用div
    2. 如果必须使用table,但是可能只对其中的特定行或者列进行修改定位的话,完全可以为其添加id属性,然后通过document.all(id)的方式来直接获取
    3. 如果遇到要对表格的所有cell进行遍历的情况,那么再使用循环row,再循环其中的cell的方式,一般也不会用到这种程度,因为到这种程度的话,完全可以有其他的替代方案了。为楼主做个参考
      

  8.   

    关于取DOM,在不同的浏览器中是有一定区别的!
    参见:
    HTML DOM节点在各浏览器中的识别差异
    http://blog.doyoe.com/article.asp?id=176简单修正:
    http://www.v-ec.com/jslib/
    点击左侧的【resetChildNodes】进行查看。
      

  9.   

    <body>
    <table id="b"><tr><td>a</td><td><input type="textbox" name="basicCon" style="width:60px" value="1"></td></tr></table>
    </body>
    <script>
    var toj = document.getElementById("b");
    var t1 = toj.firstChild.firstChild.lastChild;
    alert(t1.innerHTML);
    alert(t1.firstChild.value);
    </script>