以下是我编写的一段比较完整的程序,大概是在一个select里向另一个select添加内容,在将所有的第二个select的值提交,大概就是用了一个隐含表单域对其赋值。<script language=javascript>
<!--
   function form1_onsubmit()
{
for (var i=0;i<form1.select2.length;i++)
{
form1.acceptman.value += form1.select2[i].value+";";
}
if(isEmpty(form1.select2.value)){
alert("请填写负责人");
form1.select2.focus();
return (false);
}else if(isEmpty(form1.plancontent.value)){
alert("请填写内容");
form1.plancontent.focus();
return (false);
}
return false;
}
//-->
</script>
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript>
<!--function select1_ondblclick()
{
add()
}//-->
</SCRIPT>
<script>
function add()
{
var opt1 = document.createElement("OPTION");
var opt2 = document.createElement("OPTION");
for (var i=0;i<form1.select1.length;i++)
{
if (form1.select1[i].selected)
{
opt1 = form1.select1[i];
}
}
opt2.text = opt1.text;
opt2.value = opt1.value;
form1.select2.add(opt2);
}function del()
{
for (var i=0;i<form1.select2.length;i++)
{
if (form1.select2[i].selected)
{
form1.select2.remove(i);
}
}
}
</script><html>
<head>
<title>制定计划</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<STYLE>
TD {
FONT-SIZE: 9pt
}
</STYLE>
<link rel="stylesheet" href="/estate/jsp/g_oa/sys/stylse/stylse_home.css">
</head><body bgcolor="#d6d3cb" text="#000000" topmargin=0>
<form name="form1" method="post" action="H03GM01I_Dzhiding_P.jsp" onsubmit="return form1_onsubmit();">   
<div align="center"><b>制定计划</b></div 
  >
  <table width="570" border="0" bordercolor="#999999" bgcolor="#bbbbbb" align="center" cellspacing="0" cellpadding="0">
    <tr bgcolor="#d6d3cb"> 
      <td width="94" height="29" bgcolor="#d6d3cb"> 
        <div align="center"><a href="H03GM01L_Dliulan.jsp">浏览计划</a></div>
      </td>
      <td width="94" height="29" bgcolor="#d6d3cb"> 
        <div align="center"><a href="H03GM01I_Dzhiding.jsp">制定计划</a></div>
      </td>
      <td width="173" height="29" bgcolor="#d6d3cb">&nbsp;</td>
      <td width="67" height="29" bgcolor="#d6d3cb"> 
        <div align="right">今天是 </div>
      </td>
      <td width="142" height="29" bgcolor="#d6d3cb">   
        <script language="javascript">           
createDatePicker("date1")           
</script>
      </td>
    </tr>
    <tr bgcolor="#d6d3cb"> 
      <td width="94" height="29" bgcolor="#d6d3cb">&nbsp;</td>
      <td colspan="3" height="29" bgcolor="#d6d3cb">
        <div align="center">(注:部门名称栏按Ctrl键可多选)</div>
      </td>
      <td width="142" height="29" bgcolor="#d6d3cb">&nbsp;</td>
    </tr>
  </table>
  <table cellpadding=2 cellspacing=1 width=570 bgcolor="#000000" align="center">
    
    <tr bgcolor="#eeeeee"> 
      <td width="158" height="141"> 
        <div align="center">人员名单 :</div>
      </td>
      <td height="141"> 
        <table width="401" border="0" cellspacing="0" cellpadding="0">
          <tr> 
            <td width="143"> 
              <select name=select1 
        size=8 ondblclick="return select1_ondblclick()">
                <option value="4119220001" selected>--全部--</option>
                
                <option value="411922000101000001">秘书处处长</option>
                
                <option value="411922000102000001">经济处处长</option>
                
                <option value="411922000103000001">企业处处长</option>
                
                <option value="411922000104000001">计划处处长</option>
                
                <option value="411922000105000001">工程处处长</option>
                
                <option value="411922000106000001">动迁处处长</option>
                
                <option value="411922000107000001">联络处处长</option>
                
                <option value="411922000108000001">法规处处长</option>
                
                <option value="411922000109000001">张秘书长</option>
                
              </select>
            </td>
            <td width="70"> 
              <p>
                <input type=button value=">>" id=button1 name=button1 style="LEFT: 170px; TOP: 10px" onClick="add()">
              </p>
              <p>
                <input type=button value="<<" id=button2 name=button2 style="LEFT: 170px; TOP: 200px" onClick="del()">
              </p>
            </td>
            <td width="88">接收人 :</td>
            <td width="74"> 
              <select name=select2 size=8>
              </select>
            </td>
          </tr>
        </table>
      </td>
    </tr>
    <tr bgcolor="#eeeeee"> 
      <td width="158" height="13"> 
        <div align="center">完成时间 :</div>
      </td>
      <td height="13"> <font size="2"> 
        <script language="javascript">           
createDatePicker("date2")           
</script>
        </font> </td>
    </tr>
    <tr bgcolor="#eeeeee"> 
      <td width="158" height="29"> 
        <div align="center">内容 :</div>
      </td>
      <td height="29"> <font size="2"> 
        <textarea name="plancontent" rows="5" cols="55"></textarea>
        </font> </td>
    </tr>
  </table>
  <div align="center"><br>
    <input type="hidden" name="acceptman" value="">
    <input type="submit" name="Submit" value="提交">
      
    <input type="reset" name="Submit2" value="重置">
  </div>
</form>

解决方案 »

  1.   

    情况特殊,不得使用Javascript!!
    thank you !
    请高手们赐教!!!
      

  2.   

    提交到abc.php后的值是
    11111,22222,33333,44444,55555
    在ASP中是这么用的,Php中的你可以参考改一下Dim SubRole
    SubRole = Split(Role,",") 
    For i=0 o UBOUND(SubRole)
       response.write SubRole(i)
    Next
      

  3.   

    <html>
    <body bgcolor="#FFFFFF" text="#000000">
    <form name="form1" method="get" action="abc.php">
      <select name="select" size="5" multiple>
        <option>11111</option>
        <option>22222</option>
        <option>33333</option>
        <option>44444</option>
        <option>55555</option>
      </select>
      <input type="submit" name="Submit" value="Submit">
    </form>
    </body>
    </html>同时选中的结果是:
    http://192.168.0.11/dist/abc.php?select=11111&select=22222&=33333&select=44444&select=55555&Submit=Submit
    结果显示的只有55555!
    why!!!!!!!
      

  4.   


        这个问题相当简单:    由于上面的方法提交的对象是一个变量,而不是数组,PHP又不会自动转换变量和数组,当然只能得到一个值。    我对[chip]的第一个程序修改一下,注意,是仅仅加了两个字符:<select name="select[]" size="5" multiple>    完全正确,就是在name的select后面加了一对方括号,如此,PHP中得到的就是一个数组了,这个数组中就包含了所有的选中的值。    真的就这么简单?以上方法已通过测试。
    _______________________________________________________________________________
    欢迎到我家来做客,不管是JavaScript还是PHP/ASP,努力做到有问必答(RUTED.COM)