<%String sStr = request.getParameter("s")==null?"":request.getParameter("s") ;
 String addValue = request.getParameter("t")==null?"":request.getParameter("t") ;%>
 <script>
 function window.onload(){
 var objs = document.all.s ;
 for (var i=0;i<objs.length;i++){
 if (objs[i].value=="<%=sStr%>"){
 objs[i].selected =true ;
 break;
 }
 }
 }
 </script>
<BODY BGCOLOR="#FFFFFF">
<form name="f" method="post">
<select name="s">
<option value="aaa1">aaa1</option>
<option value="aaa2">aaa2</option>
<option value="aaa3">aaa3</option>
<option value="aaa4">aaa4</option>
<%if (!addValue.equals(""))
out.println("<option value=\""+addValue+"\">"+addValue+"</option>") ;
%>
</select>
<input type="text" name="t">
<input type="submit" name="sum" value="submit">
</form>
</BODY>你将addValue的值用session中的代替就是了。
有问题再说吧。

解决方案 »

  1.   

    一个简单的js
    function addlistmember()
    {
       len = document.form1.select.option.length;
       obj = new Option("下拉菜单要显示的内容","value");
       document.form1.select.option[len] = obj;
    }
      

  2.   

    <script>
     function window.onload(){
     var objs = document.all.s ;
     for (var i=0;i<objs.length;i++){
     if (objs[i].value=="<%=sStr%>"){
     objs[i].selected =true ;
     break;
     }
     }
       addlistmember() ;//调用
     }
     </script>
      

  3.   

    Andrawu我有多个select该怎么办?
      

  4.   

    Andrawu,
    我加了addlistmember() 之后运行出现对象错误,但是在出现错误之前似乎一闪好象写进去了,但是对象错误这种错误该如何排除啊?
      

  5.   

    有多个select的值,还是有多个select对象啊。
      

  6.   

    你的下拉菜单叫什么名称?就是name="",你看看,然后把上面的select换成你的name的名字
      

  7.   

    Andrawu,
    我加了addlistmember() 之后运行出现对象错误,但是在出现错误之前似乎一闪好象写进去了,但是对象错误这种错误该如何排除啊?
    能不能告诉我这个函数是那来的,他的作用是什么?
      

  8.   

    虚竹,我在写你哪个函数是,一运行就出现“document.form1.num.option.length”不是对象
    你看是怎么回事呢?
    Andrawu你看看我写给你的问题
      

  9.   

    <script>
     function window.onload(){
     var objs = document.all.s ;
     for (var i=0;i<objs.length;i++){
     if (objs[i].value==""){
     objs[i].selected =true ;
     break;
     }
     }
    addlistmember() ;
     } function addlistmember()
    {
       len = document.all.s.length;
       document.all.s.add(new Option("text","value"),len) ;
    }
     </script>
      

  10.   

    那个window.onload(),函数是不是和其他的有些不同,它主要的特点是什么?
    我想做一个类似的东西那该怎么做呢?
      

  11.   

    window.onload()为页下载时执行该函数。<%String sStr0 = request.getParameter("s0")==null?"":request.getParameter("s0") ;
     String sStr1 = request.getParameter("s1")==null?"":request.getParameter("s1") ;
     String sStr2 = request.getParameter("s2")==null?"":request.getParameter("s2") ;
     String addValue = request.getParameter("t")==null?"":request.getParameter("t") ;
     String[] aStr =new String[3] ;
     aStr[0]=sStr0;aStr[1]=sStr1;aStr[2] = sStr2 ;%>
     <script>
     function window.onload(){
     <%for (int i=0;i<aStr.length;i++){%>
     var objs = document.all.s<%=i%> ;
     for (var i=0;i<objs.length;i++){
     if (objs[i].value=="<%=aStr[i]%>"){
     objs[i].selected =true ;
     break;
     }
     }
    addlistmember(<%=i%>) ;
       <%}%>
     } function addlistmember(j)
    {
    var objs = eval("document.all.s"+j) ;
       len = objs.length;
       objs.add(new Option("text","value"),len) ;
    } </script>
    <BODY BGCOLOR="#FFFFFF">
    <form name="f" method="post">
    <select name="s0">
    <option value="aaa1">aaa1</option>
    <option value="aaa2">aaa2</option>
    <option value="aaa3">aaa3</option>
    <option value="aaa4">aaa4</option>
    </select>
    <select name="s1">
    <option value="aaa11">aaa11</option>
    <option value="aaa21">aaa21</option></select>
    <select name="s2">
    <option value="aaa12">aaa12</option>
    <option value="aaa22">aaa22</option>
    <option value="aaa32">aaa32</option>
    </select><input type="text" name="t">
    <input type="submit" name="sum" value="submit">
    </form>
      

  12.   


    我在最初打开1.jsp是因为session里没有值,所以发生null,point等错误,我后来先给了出值,进去之后就没有问题了,但发现运行后那些下拉菜单了多了几项text,我想是不是函数:addlistmember()的问题
     下面:
    len = document.all.num.length;
       document.all.num.add(new Option("text","value"),len) ;
    是什么意思,能给解释一下吗?
      

  13.   

    document.all.num.add(new Option("<%=sessionVar%>","<%=sessionVar%>"),len) ;new Option("下拉菜单要显示的内容","value");
       
      

  14.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD><BODY>
    <form name="form1" method="post" action="">
      <select name="select" size="1">
        <option value="1" selected>1</option>
      </select>
      <INPUT type="button" name="submit" onclick="addlistmember()">
    </form>
    </BODY>
    <script language="javascript">
    function addlistmember()
    {
       len = document.form1.select.options.length;
       obj = new Option("aaa","aaaa");
       document.form1.select.options[len] = obj;
    }
    </script></HTML>
      

  15.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD><BODY>
    <form name="form1" method="post" action="">
      <select name="select" size="1">
        <option value="1" selected>1</option>
      </select>
      <INPUT type="button" name="submit" onclick="addlistmember()">
    </form>
    </BODY>
    <script language="javascript">
    function addlistmember()
    {
       len = document.form1.select.options.length;
       obj = new Option("aaa","aaaa");
       document.form1.select.options[len] = obj;
    }
    </script></HTML>