本帖最后由 woaihanasd 于 2012-06-24 12:52:03 编辑

解决方案 »

  1.   

    getElementsByName只能使用在表单元素里面,如input等。其他元素不能使用
    这是标准的规范,IE是往往不按国际规范做东西的
      

  2.   


    document.getElementsById("td1");
      

  3.   

    getElementsByName不能取id属性的,必须是name属性的
      

  4.   


    var tableTD = document.getElementsByName("td");
                var tableTD1 = document.getElementsByName("td1");
    我需要的是取出所有相同ID的 TD 标签。。
      

  5.   


    据说 TD 标签没有Name属性阿。
      

  6.   

    本帖最后由 net_lover 于 2012-06-24 13:14:15 编辑
      

  7.   


    id必须是唯一的,可以用class属性对元素进行“分组”:
    <table width="500" border="1" id="demo">
      <tr>
        <td class="cellGroup1">&nbsp;</td>
        <td class="cellGroup2">&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
      <tr>
        <td class="cellGroup1">&nbsp;</td>
        <td>&nbsp;</td>
        <td class="cellGroup1">&nbsp;</td>
      </tr>
    </table>
    <script type="text/javascript">
    var obj = document.getElementById('demo').getElementsByTagName('td');
    var group1 = [], group2 = [];
    for (var i = 0; i < obj.length; i ++) {
    if (obj[i].className == 'cellGroup1') group1.push(obj[i]);
    if (obj[i].className == 'cellGroup2') group2.push(obj[i]);
    }
    alert(group1.length); //3
    alert(group2.length); //1
    </script>
      

  8.   

    解决的办法。
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
        <script type="text/javascript">
            //alert(1097 % 10);
            var Data = new Array();
            var Data1 = new Array();
            var yuShu = Data.length % 10;
            var HTML;
            function initialization() {
                var table = document.getElementById("table");
                var tbody = document.createElement("tbody");
                for (var i = 0; i < 10; i++) {
                    var tr = document.createElement("tr");
                    var td = document.createElement("td");
                    var td1 = document.createElement("td");
                    td.id = "td";
                    td1.id = "td1";
                    tr.appendChild(td);
                    tr.appendChild(td1);
                    tbody.appendChild(tr);
                    table.appendChild(tbody);
                }
            }        function initable() {
                var tableTD = new Array();
                var tableTD1 = new Array();
                var obj = document.getElementsByTagName("td");
                for (var index = 0; index < obj.length; index++) {
                    //alert(obj[index].id);
                    if (obj[index].id == "td") {
                        tableTD[tableTD.length] = obj[index];
                    }
                    else if (obj[index].id == "td1") {
                        tableTD1[tableTD1.length] = obj[index];
                    }            }
                //var tableTD = document.getElementsByName("td");
                //var tableTD1 = document.getElementsByName("td1");
                var sum = Data.length;
                for (var i = 0; i < 10; i++) {
                    if (i >= Data.length) {
                        break;
                    }
                    tableTD[i].innerHTML = Data1[sum-1];
                    tableTD1[i].innerHTML = Data[sum-1];
                    sum--;
                }
            }
            function show(b, o) {
                var tableTD = new Array();
                var tableTD1 = new Array();
                var obj = document.getElementsByTagName("td");
                for (var index = 0; index < obj.length; index++) {
                    //alert(obj[index].id);
                    if (obj[index].id == "td") {
                        tableTD[tableTD.length] = obj[index];
                    }
                    else if (obj[index].id == "td1") {
                        tableTD1[tableTD1.length] = obj[index];
                    }            }
                for (var i = 0; i < 10; i++) {
                    if (b >= Data.length) {
                        tableTD[i].innerHTML = "";
                        tableTD1[i].innerHTML = "";
                        b++;
                    }
                    else {
                        tableTD[i].innerHTML = Data1[b];
                        tableTD1[i].innerHTML = Data[b];
                        b++;
                    }
                }
            }
            function fb(text) {
                Data1[Data.length] = Date();
                Data[Data.length] = text;
                initable();
                fenye();
            }
            function fenye() {
                var div = document.getElementById("fy");
                yuShu = Data.length % 10;
                var fenYeShu = (Data.length - yuShu) / 10;
                div.innerHTML = "";
                for (var i = 1; i <= fenYeShu; i++) {
                    var a = document.createElement("input");
                    a.type = "button";
                    a.onclick = spot;
                    a.value = i + "0";
                    div.appendChild(a);
                    //div.appendChild(&nbsp);
                }
                if (yuShu > 0) {
                    var a = document.createElement("input");
                    a.type = "button";
                    a.onclick = spot;
                    a.value = fenYeShu * 10 + yuShu;
                    div.appendChild(a);
                }
            }        function spot(event) {
                var obj = event.srcElement ? event.srcElement : event.target;
                if (obj.value % 10 > 0) {
                    show(obj.value - yuShu, obj.value);
                }
                else {
                    show(obj.value - 10, obj.value);
                }
            }    </script>
    </head>
    <body onload="initialization()">
    <input type="text" id="texts" />
    <input type="button" onclick="fb(document.getElementById('texts').value)" value="发表评论"/>
    <table id="table" border="1"></table>
    <div id="fy"></div>
    </body>
    </html>
      

  9.   


    根据你的方法我做了一下修改,你看是不是可以,也谢谢你的提醒,因为是初学者,所以很多常识并不知道,见谅。。
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
        <script type="text/javascript">
            var Data = new Array();
            var Data1 = new Array();
            var yuShu = Data.length % 10;
            var HTML;
            function initialization() {
                var table = document.getElementById("table");
                var tbody = document.createElement("tbody");
                for (var i = 0; i < 10; i++) {
                    var tr = document.createElement("tr");
                    var td = document.createElement("td");
                    var td1 = document.createElement("td");
                    td.class = "td";
                    td1.class = "td1";
                    tr.appendChild(td);
                    tr.appendChild(td1);
                    tbody.appendChild(tr);
                    table.appendChild(tbody);
                }
            }        function initable() {
                var tableTD = new Array();
                var tableTD1 = new Array();
                var obj = document.getElementsByTagName("td");
                for (var index = 0; index < obj.length; index++) {
                    if (obj[index].class == "td") {
                        tableTD[tableTD.length] = obj[index];
                    }
                    else if (obj[index].class == "td1") {
                        tableTD1[tableTD1.length] = obj[index];
                    }            }
                var sum = Data.length;
                for (var i = 0; i < 10; i++) {
                    if (i >= Data.length) {
                        break;
                    }
                    tableTD[i].innerHTML = Data1[sum - 1];
                    tableTD1[i].innerHTML = Data[sum - 1];
                    sum--;
                }
            }
            function show(b, o) {
                var tableTD = new Array();
                var tableTD1 = new Array();
                var obj = document.getElementsByTagName("td");
                for (var index = 0; index < obj.length; index++) {
                    if (obj[index].class == "td") {
                        tableTD[tableTD.length] = obj[index];
                    }
                    else if (obj[index].class == "td1") {
                        tableTD1[tableTD1.length] = obj[index];
                    }            }
                for (var i = 0; i < 10; i++) {
                    if (b >= Data.length) {
                        tableTD[i].innerHTML = "";
                        tableTD1[i].innerHTML = "";
                        b++;
                    }
                    else {
                        tableTD[i].innerHTML = Data1[b];
                        tableTD1[i].innerHTML = Data[b];
                        b++;
                    }
                }
            }
            function fb(text) {
                Data1[Data.length] = Date();
                Data[Data.length] = text;
                initable();
                fenye();
            }
            function fenye() {
                var div = document.getElementById("fy");
                yuShu = Data.length % 10;
                var fenYeShu = (Data.length - yuShu) / 10;
                div.innerHTML = "";
                for (var i = 1; i <= fenYeShu; i++) {
                    var a = document.createElement("input");
                    a.type = "button";
                    a.onclick = spot;
                    a.value = i + "0";
                    div.appendChild(a);
                    //div.appendChild(&nbsp);
                }
                if (yuShu > 0) {
                    var a = document.createElement("input");
                    a.type = "button";
                    a.onclick = spot;
                    a.value = fenYeShu * 10 + yuShu;
                    div.appendChild(a);
                }
            }        function spot(event) {
                var obj = event.srcElement ? event.srcElement : event.target;
                if (obj.value % 10 > 0) {
                    show(obj.value - yuShu, obj.value);
                }
                else {
                    show(obj.value - 10, obj.value);
                }
            }    </script>
    </head>
    <body onload="initialization()">
    <input type="text" id="texts" />
    <input type="button" onclick="fb(document.getElementById('texts').value)" value="发表评论"/>
    <table id="table" border="1"></table>
    <div id="fy"></div>
    </body>
    </html>
      

  10.   

                    td.className = "td";
                    td1.className = "td1";
    ...if (obj[index].className == "td") {
    else if (obj[index].className == "td1") {
      

  11.   


    className 和 class  之间的区别为何可以使用,请指教。
      

  12.   

    html中写class="xx"
    js里面必须写className="xx"
      

  13.   

    class是html标签的属性名,对应的DOM对象属性名是className。
    <div id="demo" class="test"></div>
    <script type="text/javascript">
    var o = document.getElementById('demo');
    alert(o.className); //获取
    o.className = 'demo'; //设置
    </script>