下拉多选框的应用

来源:互联网 发布:淘宝的运作模式 编辑:程序博客网 时间:2024/06/05 20:20

下拉多选框的应用

Jsp页面代码:
其中vcTown为镇区代码和名称的二维向量:
 <td height="30" align='left'>
  <select multiple readonly name ='townName' style="width:250px; " >
  <!-- <option value=''>
全部镇区</option> -->
  <%if(vcTown!=null){
   if(vcTown.size()>0){
    for(int intI=0;intI<vcTown.size();intI++){
     Vector vcTemp= new Vector();
     vcTemp=(Vector)vcTown.get(intI);
    %>
   <option value='<%=(String)vcTemp.get(0)%>'><%=(String)vcTemp.get(1)%></option>
    <%}
   }
  }%>
  </select>
 </td>

JavaScript代码:
功能:取页面中选择了的选项。
 var i;
 var townId = "";
 var townName = "";
 var tempTownId = "";
 var tempTownName = "";
 for(i=0;i<document.all['townName'].options.length;i++){
  if(document.all['townName'].options[i].selected){
   tempTownId += document.all['townName'].options[i].value+"','";
   tempTownName += document.all['townName'].options[i].text +",";
  }
 }
 townId = tempTownId.substr(0,tempTownId.length-3);
 alert("townId="+townId);
 townName = tempTownName.substr(0,tempTownName.length-1);
 alert("townName"townName);

Java代码:
功能:从页面取数据到业务层,request.getParamValues取得的结果为字符串数组
 String[] tempTownName;
 tempTownName = request.getParamValues(request,"townName");
 String townCode = "";
 for(int i=0;i<tempTownName.length;i++){
  //System.out.println("tempTownName["+i+"]="tempTownName[i]);
  //
分隔字符串,用于查询如:in('001','002','003')
  townCode += tempTownName[i]+"','";
 }
 townCode = townCode.substring(0,townCode.length()-3);