页面现有如下一组控件:<input type="checkbox" name="chkTemp" value="a$$1">
<input type="checkbox" name="chkTemp" value="b$$1">
<input type="checkbox" name="chkTemp" value="c$$2">
<input type="checkbox" name="chkTemp" value="d$$1">
<input type="checkbox" name="chkTemp" value="e$$1">
<input type="checkbox" name="chkTemp" value="f$$1">当以上控件有被选择项时,提交前需要判断每个控件值中"$$"后面部分是否相同,相同返回“True”,不同返回“False”例如:当第一、二、五项被选择时,每个控件值中"$$"后面部分相同,因此返回“True”当第二、三、四项被选择时,由于第三项控件值中"$$"后面部分与其他控件值不同,因此返回“false”请问上述判断用JAVASCRIPT怎么写?

解决方案 »

  1.   


    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
    <title>标题页</title>
    <script language=javascript>
    function sts()
    {
    }
    </script>
    </head>
    <body>
    <script language="JavaScript">
    function selectGroup(obj)
    {
      var chkObj = obj.id;              //获取对象的id
      var chkValue=obj.checked;                //判断当前对象是否选中
      var chkArr = mySpan.getElementsByTagName("input");//获取所有的复选框
      for(var i=0; i<chkArr.length; i++)         //遍历所有的复选框
        if(chkArr[i].id==chkObj)                   //判断ID是否相等
          chkArr[i].checked=chkValue                      //如果相等则选中
    }
    function judge(){
        var test=[];
        var div = document.getElementById("test");
        var chkArr = div.getElementsByTagName("input");
        for(var i=0;i<chkArr.length;i++){
            for(var j=0;j<test.length;j++){
                var flag=false;
                if((chkArr[i].value.split("$$")[1]==test[j])&&chkArr[i].checked){
                    alert("值重复了");//你直接return true
                    flag=true;
                } 
            }
            if(!flag)
                 test[test.length]=chkArr[i].value.split("$$")[1];
        }
    }
    </script><div id="test">
    <input type="checkbox" name="chkTemp" value="a$$1">
    <input type="checkbox" name="chkTemp" value="b$$1">
    <input type="checkbox" name="chkTemp" value="c$$2">
    <input type="checkbox" name="chkTemp" value="d$$1">
    <input type="checkbox" name="chkTemp" value="e$$1">
    <input type="checkbox" name="chkTemp" value="a$$1">
    </div>
        <input type="button" onclick="judge()" value="判断">
    </body>
    </html>
      

  2.   

    这个不要function selectGroup(obj)
    {
      var chkObj = obj.id;              //获取对象的id
      var chkValue=obj.checked;                //判断当前对象是否选中
      var chkArr = mySpan.getElementsByTagName("input");//获取所有的复选框
      for(var i=0; i<chkArr.length; i++)         //遍历所有的复选框
        if(chkArr[i].id==chkObj)                   //判断ID是否相等
          chkArr[i].checked=chkValue                      //如果相等则选中
    }
      

  3.   

    <!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 http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    </head><body>
    <form onsubmit="judge();">
    <input type="checkbox" name="chkTemp" value="a$$1">
    <input type="checkbox" name="chkTemp" value="b$$1">
    <input type="checkbox" name="chkTemp" value="c$$2">
    <input type="checkbox" name="chkTemp" value="d$$1">
    <input type="checkbox" name="chkTemp" value="e$$1">
    <input type="checkbox" name="chkTemp" value="a$$1">
    </div>
        <input type="submit" value="判断">
    </form>
    <script type="text/javascript">
    function judge()
    {
    var chkList=document.getElementsByName("chkTemp");
    var strVal,pos=1,isOK="true";
    for(var i=0;i<chkList.length;i++)
    {
    if(chkList[i].checked && pos==1)
    {
    strVal=chkList[i].value.substring(3,4);
    pos=pos+1;
    }
    if(chkList[i].checked && chkList[i].value.substring(3,4)!=strVal)
    {
    isOK= "false";
    break;
    }
    }
    alert(isOK);
    }
    </script>
    </body>
    </html>
      

  4.   


    <script>
    function check(){
      var f = document.forms[0];
      var c = f.chkTemp;
      var a = [];
      for(var i=0;i<c.length-1;i++){
       if(c[i].checked) a.push(c[i]);
      }
      for(var i=0;i<a.length-1;i++){
       var b = false;
       var n1 = a[i].value;
       n1 = n1.substr(3,n1.length-3);
        for(var j=i+1;j<a.length;j++){
        var n2 = a[j].value;
        n2 = n2.substr(3,n2.length-3);
        if(n1!=n2){b=true;alert("有不同"+n1+n2);break;}
        }
        if(b) return false;
      }
      return true;
    }
    </script>
    <form>
    <input type="button" value="check" onclick="check()">
    <input type="checkbox" name="chkTemp" value="a$$1"> 
    <input type="checkbox" name="chkTemp" value="b$$1"> 
    <input type="checkbox" name="chkTemp" value="c$$2"> 
    <input type="checkbox" name="chkTemp" value="d$$1"> 
    <input type="checkbox" name="chkTemp" value="e$$1"> 
    <input type="checkbox" name="chkTemp" value="f$$1">
    </form>