<%
String distribut = "IQC,装配一厂,装配二厂,五金厂,塑胶厂,供应商";
String[] distr = distribut.split(",");
%>
<input type="checkbox" name="distribution" value="IQC"
<% for(int i=0;i<distr.length;i++){ if(distr[i].trim().equals(" IQC")){ %>
checked <%System.out.println(distr[i]); break; }  }%> />
IQC
<input type="checkbox" name="distribution" value="装配一厂"
<% for(int j=0;j<distr.length;j++){ if(distr[j].trim().equals("装配一厂")){ %>
checked <% break; }  }%> />
装配一厂
<input type="checkbox" name="distribution" value="装配二厂"
<% for(int k=0;k<distr.length;k++){ if(distr[k].trim().equals("装配二厂")){ %>
checked <% break; }  }%> />
装配二厂
<input type="checkbox" name="distribution" value="五金厂 "
<% for(int l=0;l<distr.length;l++){ if(distr[l].trim().equals(" 五金厂")){ %>
checked <% break; }  }%> />
五金厂
<input type="checkbox" name="distribution" value="塑胶厂"
<% for(int m=0;m<distr.length;m++){ if(distr[m].trim().equals(" 塑胶厂")){ %>
checked <% break; }  }%> />
塑胶厂
<input type="checkbox" name="distribution" value="供应商 "
<% for(int n=0;n<distr.length;n++){ if(distr[n].trim().equals(" 供应商 ")){ %>
checked <% break; }  }%> />
供应商运行的结果是复选筐只有:装配一厂,装配二厂前面的复选筐被选中,其他没有被选中,照理说结果应该是这些复选筐全部被选中的,为什么,怎么解决.

解决方案 »

  1.   


    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <% 
    String distribut = "IQC,装配一厂,装配二厂,五金厂,塑胶厂,供应商"; 
    String[] distr = distribut.split(","); 
    %> 
    <input type="checkbox" name="distribution" value="IQC" 
    <% for(int i=0;i <distr.length;i++){ if(distr[i].trim().equals("IQC")){ %> 
    checked <%System.out.println(distr[i]); break; }  }%> /> 
    IQC 
    <input type="checkbox" name="distribution" value="装配一厂" 
    <% for(int j=0;j <distr.length;j++){ if(distr[j].trim().equals("装配一厂")){ %> 
    checked <% break; }  }%> /> 
    装配一厂 
    <input type="checkbox" name="distribution" value="装配二厂" 
    <% for(int k=0;k <distr.length;k++){ if(distr[k].trim().equals("装配二厂")){ %> 
    checked <% break; }  }%> /> 
    装配二厂 
    <input type="checkbox" name="distribution" value="五金厂 " 
    <% for(int l=0;l <distr.length;l++){ if(distr[l].trim().equals("五金厂")){ %> 
    checked <% break; }  }%> /> 
    五金厂 
    <input type="checkbox" name="distribution" value="塑胶厂" 
    <% for(int m=0;m <distr.length;m++){ if(distr[m].trim().equals("塑胶厂")){ %> 
    checked <% break; }  }%> /> 
    塑胶厂 
    <input type="checkbox" name="distribution" value="供应商 " 
    <% for(int n=0;n <distr.length;n++){ if(distr[n].trim().equals("供应商")){ %> 
    checked <% break; }  }%> /> 
    供应商 经过修改并且测试通过
      

  2.   

    你这段代码页整的太复杂了吧,你想做什么,要实现复选框的全选,用js实现并不难的,点击一个复选框,onclick事件,得到复选框的长度,进行循环,设置复选框的checked的属性为true就ok了!
      

  3.   

    if(distr[m].trim().equals("塑胶厂")){ %> 
    if(distr[l].trim().equals("五金厂")){ %> 
    if(distr[n].trim().equals("供应商")){ %> 
    你equals里边多了一个空格或者多个空格。
      

  4.   

    这个方法好。请楼主好好看看JavaScript吧。