我想实现遍历conlist下所有input,我写的代码不行,请指教!<!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>
<meta content="text/html; charset=gb2312" http-equiv="Content-Type" />
<title>Untitled 4</title>
</head><body>
<script language="javascript" type="text/javascript">
function do_comp()
{
var obj=document.getElementById('conlist').innerHTML;
var objinp=obj.getElementsByTagName('input');
var onum=0;
var compuri;
for (var i = 0; i < objinp.length; i++) {  
if ((objinp[i].checked=='checked')&&(onum<4)){
if(onum<1){compuri=compuri+objinp[i].value;}else{compuri=compuri+','+objinp[i].value;}
onum++;

}
window.location.target="_blank";window.location.href="http://www.abc.com/compare.html?id="+compuri; 
}
</script>
<div class="conlist">
<input id="proId_10011" name="proId[]1" type="checkbox" value="4863" />
<input id="proId_10012" name="proId[]1" type="checkbox" value="2167" />
<input id="proId_10013" name="proId[]1" type="checkbox" value="4084" />
<input id="proId_10014" name="proId[]1" type="checkbox" value="3957" />
<input id="proId_10015" name="proId[]1" type="checkbox" value="2167" />
<input id="proId_10016" name="proId[]1" type="checkbox" value="4909" />
</div><input type="button" value="对比" onclick="do_comp();"/>
</body></html>

解决方案 »

  1.   

    楼主对比一下,这div没写id。
    function do_comp() {
    var obj = document.getElementById('conlist');
    var objinp = obj.getElementsByTagName('input'); var compuri;
    for (var i = 0; i < objinp.length; i++) {
    if ((objinp[i].checked) && (i < 4)) {
    if (i < 1) {
    compuri = objinp[i].value;
    } else {
    compuri = compuri + ',' + objinp[i].value;
    }
    }
    }// var compuri = 1;
    // var onum=0;
    // for (var i = 0; i < objinp.length; i++) {
    // if ((objinp[i].checked == 'checked') && (onum < 4)) {
    // if (onum < 1) { compuri = compuri + objinp[i].value; } else { compuri = compuri + ',' + objinp[i].value; }
    // onum++;
    // }
    // } window.location.target = "_blank"; window.location.href = "http://www.abc.com/compare.html?id=" + compuri;
    }
      

  2.   

    <div class="conlist">
    ->
    <div id="conlist" class="conlist">class不是idvar obj=document.getElementById('conlist').innerHTML;
    ->>
    var obj=document.getElementById('conlist');innerHTML 是字符串 -_-!!!<!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>
    <meta content="text/html; charset=gb2312" http-equiv="Content-Type" />
    <title>Untitled 4</title>
    </head><body>
    <script language="javascript" type="text/javascript">
    function do_comp()
    {
        var obj=document.getElementById('conlist');
        var objinp=obj.getElementsByTagName('input');
        var onum=0;
        var compuri;
        for (var i = 0; i < objinp.length; i++) {  
            if ((objinp[i].checked=='checked')&&(onum<4)){
                if(onum<1){compuri=compuri+objinp[i].value;}else{compuri=compuri+','+objinp[i].value;}
                onum++;
            } 
        }
        window.location.target="_blank";window.location.href="http://www.abc.com/compare.html?id="+compuri; 
    }
    </script>
    <div id="conlist" class="conlist">
        <input id="proId_10011" name="proId[]1" type="checkbox" value="4863" />
        <input id="proId_10012" name="proId[]1" type="checkbox" value="2167" />
        <input id="proId_10013" name="proId[]1" type="checkbox" value="4084" />
        <input id="proId_10014" name="proId[]1" type="checkbox" value="3957" />
        <input id="proId_10015" name="proId[]1" type="checkbox" value="2167" />
        <input id="proId_10016" name="proId[]1" type="checkbox" value="4909" />
    </div><input type="button" value="对比" onclick="do_comp();"/>
    </body></html>
      

  3.   

    [code=JScript<!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>
    <meta content="text/html; charset=gb2312" http-equiv="Content-Type" />
    <title>Untitled 4</title>
    </head><body>
    <script language="javascript" type="text/javascript">
    function do_comp()
    {
       var obj=document.getElementById('conlist');
        var compuri="";
        for (var i = 0; i < obj.children.length; i++) {  
            if (obj.children[i].checked){
                if(i==0){
                     compuri=compuri+obj.children[i].value;
                 }else{
                 compuri=compuri+','+obj.children[i].value;
                 }     
            } 
        }
        window.location.target="_blank";window.location.href="http://www.abc.com/compare.html?id="+compuri; 
    }
    </script>
    <div class="conlist" id='conlist'>
        <input id="proId_10011" name="proId[]1" type="checkbox" value="4863" />
        <input id="proId_10012" name="proId[]1" type="checkbox" value="2167" />
        <input id="proId_10013" name="proId[]1" type="checkbox" value="4084" />
        <input id="proId_10014" name="proId[]1" type="checkbox" value="3957" />
        <input id="proId_10015" name="proId[]1" type="checkbox" value="2167" />
        <input id="proId_10016" name="proId[]1" type="checkbox" value="4909" />
    </div><input type="button" value="对比" onclick="do_comp();"/>
    </body></html>
    [/code]
      

  4.   

    <!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>
    <meta content="text/html; charset=gb2312" http-equiv="Content-Type" />
    <title>Untitled 4</title>
    </head><body>
    <script language="javascript" type="text/javascript">
    function do_comp()
    {
       var obj=document.getElementById('conlist');
        var compuri="";
        for (var i = 0; i < obj.children.length; i++) {  
            if (obj.children[i].checked){
                if(i==0){
                     compuri=compuri+obj.children[i].value;
                 }else{
                 compuri=compuri+','+obj.children[i].value;
                 }     
            } 
        }
        window.location.target="_blank";window.location.href="http://www.abc.com/compare.html?id="+compuri; 
    }
    </script>
    <div class="conlist" id='conlist'>
        <input id="proId_10011" name="proId[]1" type="checkbox" value="4863" />
        <input id="proId_10012" name="proId[]1" type="checkbox" value="2167" />
        <input id="proId_10013" name="proId[]1" type="checkbox" value="4084" />
        <input id="proId_10014" name="proId[]1" type="checkbox" value="3957" />
        <input id="proId_10015" name="proId[]1" type="checkbox" value="2167" />
        <input id="proId_10016" name="proId[]1" type="checkbox" value="4909" />
    </div><input type="button" value="对比" onclick="do_comp();"/>
    </body></html>
      

  5.   

    多查查手册吧 DHTML 参考手册
    http://download.csdn.net/source/308913L@_@K
    <!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>
    <meta content="text/html; charset=gb2312" http-equiv="Content-Type" />
    <title>Untitled 4</title>
    </head><body>
    <script language="javascript" type="text/javascript">
    function do_comp()
    {
        var obj=document.getElementById('conlist');
        var objinp=obj.getElementsByTagName('input');
        var onum=0;
        var compuri = "";
        for (var i = 0; i < objinp.length; i++) {  
            if ((objinp[i].checked)&&(onum<4))
            {
                if(onum<1)
                    compuri += objinp[i].value;
                else
                {
                    compuri += ','+objinp[i].value;}
                onum++;
            } 
        }
        alert(compuri);
        // 自己取消注释。
        //window.location.target="_blank";
        //window.location.href="http://www.abc.com/compare.html?id="+compuri; 
    }
    </script>
    <div id="conlist">
        <input id="proId_10011" name="proId[]1" type="checkbox" value="4863" />
        <input id="proId_10012" name="proId[]1" type="checkbox" value="2167" />
        <input id="proId_10013" name="proId[]1" type="checkbox" value="4084" />
        <input id="proId_10014" name="proId[]1" type="checkbox" value="3957" />
        <input id="proId_10015" name="proId[]1" type="checkbox" value="2167" />
        <input id="proId_10016" name="proId[]1" type="checkbox" value="4909" />
    </div><input type="button" value="对比" onclick="do_comp();"/>
    </body></html>
      

  6.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=gbk">
            <title>Untitled Document</title>
            <script language="javascript" type="text/javascript">
                function do_comp(){
                    var obj = document.getElementById('conlist');//这里不需要用innerHTML,同时“conlist”是ID,不是class
                    var objinp = obj.getElementsByTagName('input');
                    var onum = 0;//你这里等于0,后面的onum<4条件进不去
                    var compuri;
                    for (var i = 0; i < objinp.length; i++) {

                        if ((objinp[i].checked == true)) { //选中状态为true
    alert(objinp[i].value);
    //                        if (onum < 1) {
    //                            compuri = compuri + objinp[i].value;
    //                        }
    //                        else {
    //                            compuri = compuri + ',' + objinp[i].value;
    //                        }
    //                        onum++;
                        }
                    }
                  //  window.location.target = "_blank";
                  //  window.location.href = "http://www.abc.com/compare.html?id=" + compuri;
                }
            </script>
        </head>
        <body>
            <div id="conlist">
                <input id="proId_10011" name="proId[]1" type="checkbox" value="4863" /><input id="proId_10012" name="proId[]1" type="checkbox" value="2167" /><input id="proId_10013" name="proId[]1" type="checkbox" value="4084" /><input id="proId_10014" name="proId[]1" type="checkbox" value="3957" /><input id="proId_10015" name="proId[]1" type="checkbox" value="2167" /><input id="proId_10016" name="proId[]1" type="checkbox" value="4909" />
            </div><input type="button" value="对比" onclick="do_comp();"/>
        </body>
    </html>
      

  7.   


    <!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>
        <meta content="text/html; charset=gb2312" http-equiv="Content-Type" />
        <title>Untitled 4</title>
    </head><body>
        <script language="javascript" type="text/javascript">
            function do_comp()
            {
                var obj = document.getElementById('conlist');    // 不要用innerHTML,
                var objinp = obj.getElementsByTagName('input');
                var onum = 0;
                var compuri = "";            for (var i = 0; i < objinp.length; i++)
                {
                    if ((objinp[i].checked) && (onum<4))     // objinp[i].checked 类型是 bool 的
                    {
                        if(onum<1)
                        {
                            compuri += objinp[i].value;
                        }
                        else
                        {
                            compuri += ','+objinp[i].value;
                        }
                        onum++;
                    }
                }
                window.location.target = "_blank";
                window.location.href = "http://www.abc.com/compare.html?id=" + compuri;
            }
        </script>    <div id="conlist"><!--不是class="conlist"-->
            <input id="proId_10011" name="proId[]1" type="checkbox" value="4863" />
            <input id="proId_10012" name="proId[]1" type="checkbox" value="2167" />
            <input id="proId_10013" name="proId[]1" type="checkbox" value="4084" />
            <input id="proId_10014" name="proId[]1" type="checkbox" value="3957" />
            <input id="proId_10015" name="proId[]1" type="checkbox" value="2167" />
            <input id="proId_10016" name="proId[]1" type="checkbox" value="4909" />
        </div>
        <input type="button" value="对比" onclick="do_comp();" />
    </body>
    </html>
      

  8.   

    var obj = document.getElementById('conlist');    // 不要用innerHTML,
    var objinp = obj.getElementsByTagName('input');
    可以直接用var objinp = document.getElementsByTagName('input');吧
      

  9.   

    话不多说,ls的都说了
    document.getElementById('conlist')是通过id查找,故这里是id不是class
    var obj=document.getElementById('conlist').innerHTML;//这个返回是html,不是对象。故innerHTML不要即可
    var objinp=obj.getElementsByTagName('input');