<%=request("aa")%>
<script language="javascript">
<!--
function watch_ini(){ // 初始
for(var i=0; i<arguments.length; i++){
   var oOption=new Option(arguments[i],arguments[i]);
   document.getElementById("MySelect")[i]=oOption;
}
}
function watch_add(f,prj_vlaue){ // 增加
   var oOption=new Option(prj_vlaue,prj_vlaue);
   f.keywords[f.keywords.length]=oOption;
}
function watch_del(f){ // 删除
f.keywords.remove(f.keywords.selectedIndex);
}
//-->
</script>
<form name="form1" method="get" action="">
  <table width="404" border="0" cellpadding="0" cellspacing="0">
    <tr>
      <td width="400" height="25" ><div id="prjname" ></div></td>
    </tr>
<tr>
      <select id="MySelect" name="keywords" size="10" ></select>
    </tr>
  </table>
<input type="submit" value="提交" name="add" />
<input type="button" value="删除" onclick="watch_del(this.form);" />
</form>
现在提交后能得到<%=request("aa")%>值,如何通过 watch_add(f,prj_vlaue)函数添加option呢?
折腾很久没整出来。(我要的效果是可以添加多少option)

解决方案 »

  1.   

    //用Select对象的add方法添加选项
    //下面这行代码的作用是向id值为MySelect的下拉列表添加一个内容为DEMO、值为TEST的选项
    document.getElementById('MySelect').add(new Option('DEMO', 'TEST'), null);
      

  2.   

    function watch_add(f, prj_value) {
    f.keywords.add(new Option(prj_value, prj_value), null);
    }
      

  3.   


    <form name="form1" method="get" action="">
      <table width="404" border="0" cellpadding="0" cellspacing="0">
        <tr>
          <td width="400" height="25" ><div id="prjname" ></div></td>
        </tr>
        <tr>
          <select id="MySelect" name="keywords" size="10" ></select>
        </tr>
      </table>
    <input type="submit" value="提交" name="add" />
    <input type="button" value="删除" onclick="watch_del(this.form);" />
    </form>
    <script language="javascript">
    <!--
    function watch_ini(){ // 初始
    for(var i=0; i<arguments.length; i++){
       var oOption=new Option(arguments[i],arguments[i]);
       document.getElementById("MySelect")[i]=oOption;
    }
    }
    function watch_add(f,prj_value){ // 增加
       f.add(new Option(prj_value, prj_value));
    }
    var test = '<%=request("aa")%>';
    var obj = document.getElementById('MySelect');
    watch_add(obj, test)
    function watch_del(f){ // 删除
    f.keywords.remove(f.keywords.selectedIndex);
    }
    //-->
    </script>这个意思?
      

  4.   

    这样不能连续添加的(可以添加多个),每次传过来<%=request("aa")%>不同
      

  5.   

    form提交会导致DOM重绘的,
    要么 aa 多接收点值,对值进行拆解
    要么记录seesion或cookie
      

  6.   

    谢谢!
    <script language="javascript">
    <!--
    function watch_ini(){ // 初始
    for(var i=0; i<arguments.length; i++){
       var oOption=new Option(arguments[i],arguments[i]);
       document.getElementById("MySelect")[i]=oOption;
    }
    }
    function watch_add(f){ // 增加
       var oOption=new Option(document.getElementById("prjname").innerHTML,document.getElementById("prjname").innerHTML);
       f.keywords[f.keywords.length]=oOption;
    }
    function watch_del(f){ // 删除
    f.keywords.remove(f.keywords.selectedIndex);
    }
    //-->
    </script>
    <form name="form1" method="get" action="">
      <table width="404" border="0" cellpadding="0" cellspacing="0">
        <tr>
          <td width="400" height="25" ><div id="prjname" ></div></td>
        </tr>
    <tr>
          <select id="MySelect" name="keywords" size="10" ></select>
        </tr>
      </table>
      <script language="javascript">
    <!--
    watch_ini("我","你","妳","他","她","它","尔"); // 初始关键词
    //-->
    </script>
    <input type="button" value="增加" name="add" onclick="watch_add(this.form);"/>
    <input type="button" value="删除" onclick="watch_del(this.form);" />
    </form>
    图一(数据库中查询得到)如何能添加图2的选中项,而不是所有相
      

  7.   

    document.getElementById("prjname").innerHTML 改成为:
    document.getElementById("prjname").innerText
    添加项为
    2图,下拉框所有值,如何才能得到选中值呢