<%@ page contentType="text/html; charset=Big5" %>
<html>
<head>
<title>
ts
</title>
</head>
<body bgcolor="#ffffff">
<h1>
JBuilder Generated JSP
</h1>
<form name="b" action="xxx.jsp" onSubmit="return subm()">
<select name="ts" style="width:55">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="4">5</option>
</select>
  <input type="hidden" name="p_ids">
  <input type="submit" name="submit" value="submit">
</form>
<script>
function subm(){
for(var i = 0 ; i<document.b.ts.length  ;i ++ ){
document.b.p_ids.value += document.b.ts.options[i].value;
if ( i !=(document.b.ts.length-1) ){
document.b.p_ids.value += ',';
}
}
return true;
} </script>
</body>
</html>

解决方案 »

  1.   

    在html中定义一个hidden域
    <input type="hidden" name="options">
    在javaScript中这样写:
    function getOptions(){
        document.all.options.value = "";
        if (document.all.ts.length != null) {
            // 表示option有多条
            for (var i=0; i < document.all.ts.length; i++) {
                document.all.options.value += document.all.ts[i].value + ",";
            }
        } else {
            // 表示option只有一条
            document.all.options.value = document.all.ts.value + ",";
        }
    }
    提交后通过request.getParamater("options");就可得到包含了所有option值的字串,它们之间用","分隔,然后你再把它们一个个取出来就可以了。
      

  2.   

    我来试试:
    <form name="b" action="xxx.jsp">
    ……
    <input type="hidden" name="hts" value="";
    </form><script laugnage="JavaScript" event="onSubmit" for="b">
    var temp="";
    for(m=0;m<b.ts.options.length;m++){
       temp = temp + b.options[m]value;
    }
    b.hts.value = temp;
    </script>xxx.jsp中:
    <%System.out.println(request.getParameter("hts"));%>
      

  3.   

    function add(){
    var ss="",j="";
    j=document.form1.select1;
     for (i=1;i<j.length;i++)
       ss=ss+j[i].value;
    return ss;            
    }
    ss就是你想要的所有值