首先,你的需求并不十分明显.
1,你的第二行,有语法错误,是for(var i = 0;不是for(int i = 0;
2,最后一个循环处,改为for(var i = 0; i < 108;然后,你是想取得所有以selid开头的的INPUT对象的值吧?var els = document.getElementsByTagName("INPUT");
for(var i = 0, l = els.length; i < l; i++)
{
    if (els[i].name.match(/^selid\d+$/gi)) alert(els[i].value);
}

解决方案 »

  1.   

    看见拼接的html输出就倒胃口...学会dom吧~~~
      

  2.   

    看见拼接的html输出就倒胃口...学会dom吧~~~
    ==========================================
    能不用DOM尽量不要用DOM!
    楼主处理的方法是对的,可以用getElementsByName来获得指定类型的控件,只是注意拼写;
    可以参考matrixy(处女主任)的方法测试一下!
      

  3.   

    input控件的输出往往涉及到对象的控制,用dom容易搞点~~~~
    也不会出现创建了控件还不知道怎么取值的事~~~
      

  4.   

    测试了一下:<html>
    <head>
    </head>
    <body>
    <table width=100%>
    <tr>
    <td width=50%>
    </td>
    <td width=50% >
    <form name=key >
    <DIV id=text></DIV>
    <input type=button value='确定' onClick='javascript:query();'>
    </form>
    </td>
    </tr>
    </table>
    </body>
    <script language="javascript">
    var list = new Array(108);
    for(var t=0;t<list.length;t++){
    list[t] = "-1";
    var fso = new ActiveXObject("Scripting.FileSystemObject"); 
    //alert("ok"); 
    var fData = fso.OpenTextFile("C:\\1.txt", 1); 
    var sel = "<input type='radio' name='selid' value='1'/>";
       var strText = "";
       var i = 0;
       while (true) {
       strText += "<p>" + fData.readline() + "</p>";
       strText += "<input type='radio' name='selid" + i + "' value='1' checked   />明显不符    ";
       strText += "<input type='radio' name='selid" + i + "' value='2'  />大多不符    ";
       strText += "<input type='radio' name='selid" + i + "' value='3'  />难以决定    ";
       strText += "<input type='radio' name='selid" + i + "' value='4'  />大体相符    ";
       strText += "<input type='radio' name='selid" + i + "' value='5'  />非常符合    ";   i++;
       if (i == 108) {
       break;
    }
    } fData.close();
    document.getElementById("text").innerHTML = strText;  
    }function query() { 
    var els = document.getElementsByTagName("input");
    for(var i = 0; i < 108; i++) {
    alert(els[i].value);
    }
    }
    </script>
    </html>
      

  5.   

    我是能用字符串拼接HTML就尽量不用DOM,呵呵,效率的差别,不是一般般的大的.
      

  6.   

    初学js,犯了个低级错误。谢楼上各位了。
    另外我像隔行设置tr的背景色,为何无效呢?
    while(true) {
    if (i%2) {
    strText += "<tr bgcolor='red'>";
    } else {
    strText += "<tr bgcolor='blue'>";
    }
    strText +="</tr>";
    i++;
    }
      

  7.   

    var i = 0;
    var strText = "<table border='1'>";
    while(true) {
    if (i == 20) break;
    if (i%2) {
    strText += "<tr bgcolor='red'>";
    } else {
    strText += "<tr bgcolor='blue'>";
    }
    strText +="<td>&nbsp;</td></tr>";
    i++;
    }
    strText += "</table>";
    document.write(strText);正确啊,会不会你刚才贴的是完全的代码?难道i未定义未初始化????还有TR里必须有TD才能显示出来的.
      

  8.   

    dom的效率低下,拼写太麻烦,能不用的话就尽量不用,以前在MS的站点上看到过说对于DHTML的效率的提高方法里就有这一条,不过各有利弊,DOM的效率低了些而己.
      

  9.   

    我很喜欢用dom,但没想到会存在效率问题.看来以后要注意了