jsp代码:
<DIV id=c00>
<INPUT onclick=addPreItem() type=checkbox value=江苏 id=jsu>江苏 
<INPUT onclick=addPreItem() type=checkbox value=上海 id=shai >上海
<INPUT onclick=addPreItem() type=checkbox value=浙江 id=zjiang >浙江 
<INPUT onclick=addPreItem() type=checkbox value=福建 id=fjian>福建 
<INPUT onclick=addPreItem() type=checkbox value=安徽 id=ahui>安徽
<INPUT onclick=addPreItem() type=checkbox value=江西 id=jxi>江西 </br></div>
js代码:
<%
String city=(String)request.getAttribute("allcity"); 
String arr[]=city.split(",");
      for(int j = 0; j<arr.length; j++){
if(arr[j].equals("江苏")){
%>
   document.getElementById('jsu').checked;
<%
  }
 }
          %>
我现在是想:如果city中有江苏,上海的话,在页面上,这两个checkbox就为选中状态,其他不选中。现在怎么改变checkbox的状态,现在document.getElementById('jsu').checked无法改变的啊!请高手指教!!!!

解决方案 »

  1.   

    document.getElementById('jsu').checked =true; 
      

  2.   

    <% 
    String city=(String)request.getAttribute("allcity"); 
    String arr[]=city.split(","); 
          for(int j = 0; j <arr.length; j++){ 
    if(arr[j].equals("江苏")){ 
    %> 
      document.getElementById('jsu').checked=true; 
    <% 
      } 

      

  3.   

    楼上的几位,使用 document.getElementById('jsu').checked=true; 不行啊,我使用alert(document.getElementById('jsu').checked)后页面都没有弹出框!还有没有高手会的啊??
      

  4.   

    <% 
    String city=(String)request.getAttribute("allcity"); 
    String arr[]=city.split(","); 
          for(int j = 0; j <arr.length; j++){ 
    if(arr[j].equals("江苏")){ 
    %> 
      document.getElementById('jsu').checked = true; 
    <% 
      } 

              %> 
      

  5.   

    checked还存在true与false。你设置true时就选中了。。
      

  6.   

    试试下面这段代码:<head>
    <script language="JavaScript" type="text/javascript">
    function addPreItem(){
    var boxs=document.getElementsByName('boxs');
    var flag1=document.getElementById('jsu').checked;
    var flag2=document.getElementById('shai').checked;
    if(flag1&&flag2){
    for(var i=0;i<boxs.length;i++){
    boxs[i].checked=false;
    }
    document.getElementById('jsu').checked=true;
    document.getElementById('shai').checked=true;
    }

    }
    </script>
    </head>
    <body>
     <DIV id=c00> 
    <INPUT onclick=addPreItem() type=checkbox value=江苏 id=jsu name="boxs">江苏 
    <INPUT onclick=addPreItem() type=checkbox value=上海 id=shai name="boxs" >上海 
    <INPUT onclick=addPreItem() type=checkbox value=浙江 id=zjiang name="boxs" >浙江 
    <INPUT onclick=addPreItem() type=checkbox value=福建 id=fjian name="boxs">福建 
    <INPUT onclick=addPreItem() type=checkbox value=安徽 id=ahui name="boxs">安徽 
    <INPUT onclick=addPreItem() type=checkbox value=江西 id=jxi name="boxs">江西 </br> 
    </div>
    </body>
      

  7.   

    <script language="javascript">
       
       function checkbox(){
         var city=<%=(String)request.getAttribute("allcity")%>; 
         var arr[]=city.split(","); 
          for(var j = 0; j <arr.length; j++){ 
               if(arr[j].equals("江苏")){ 
                  document.getElementById('jsu').checked=true; 
               } 
          } 
        }
    </script>
    <body  onload="checkbox()">
    </body>
     试试吧
      

  8.   

    都试过了,不行啊,我把checkbox中的代码改为
    <INPUT onclick=addPreItem() type=checkbox value=江苏 id=jsu checked=false>江苏 后,checkbox就为选中状态了,无论checkedk是true 还是false ,都是选中状态,这是为什么啊?
      

  9.   

    String arr[]=city.split(","); 
    arr[] 数组里有值吗?
    我意思是说你数据取出来了吗?
      

  10.   

    如果取出来了,这个if(arr[j].equals("江苏"))是否又成立呢?
      

  11.   

    在jsp中,checked属性的值应该是"checked"吧,不能用"true"和"false"吧。
    如下:<INPUT onclick=addPreItem() type=checkbox value=江苏 id=jsu checked="checked">
    再根据上面我叶的语句,改改你前面的程序,应该是没问题的。
    有问题慢慢找,慢慢试,千万别着急。
      

  12.   

    document.getElementById('jsu').checked=true;
      

  13.   

    jsp代码: 
    <DIV id=c00> 
    <INPUT onclick=addPreItem() type=checkbox value=江苏 id=jsu>江苏 
    <INPUT onclick=addPreItem() type=checkbox value=上海 id=shai >上海 
    <INPUT onclick=addPreItem() type=checkbox value=浙江 id=zjiang >浙江 
    <INPUT onclick=addPreItem() type=checkbox value=福建 id=fjian>福建 
    <INPUT onclick=addPreItem() type=checkbox value=安徽 id=ahui>安徽 
    <INPUT onclick=addPreItem() type=checkbox value=江西 id=jxi>江西 </br> </div> 
    js代码: 
    <% 
    String city=(String)request.getAttribute("allcity"); 
    String arr[]=city.split(","); 
          for(int j = 0; j <arr.length; j++){ 
    if(arr[j].equals("江苏")){ 
    %> 
    <script> //加js标签
      document.getElementById('jsu').checked='checked'; 
    </script>
    <% 
      } 

              %> 
    如果还不行,你先alert(document.getElementById('jsu')),看看对象能不能获取到
      

  14.   


    <DIV id="c00"> 
    <INPUT onclick="addPreItem()" type="checkbox" value="江苏" id="jsu">江苏 
    <INPUT onclick="addPreItem()" type="checkbox" value="上海" id="shai" >上海 
    <INPUT onclick="addPreItem()" type="checkbox" value="浙江" id="zjiang" >浙江 
    <INPUT onclick="addPreItem()" type="checkbox" value="福建" id="fjian">福建 
    <INPUT onclick="addPreItem()" type="checkbox" value="安徽" id="ahui">安徽 
    <INPUT onclick="addPreItem()" type="checkbox" value="江西" id="jxi">江西 <br/> </div> 
    <script type="text/javascript">
    <% 
    String arr[]=new String[]{"江苏","上海","浙江"}; 
          for(int j = 0; j <arr.length; j++){ 
    if(arr[j].equals("江苏")){ 
    %> 
       document.getElementById('jsu').checked=true; 
    <% 
       } 

             %> 
    </script>lz可以用这个试试 把arr数组的换下就可以了