<form action="busprice_post.asp" name="Form1" onsubmit="return checkinput()" method="POST">
<script language=javascript>
function GetObjectID(ObjName)
{ for (var ObjID=0; ObjID < document.Form1.elements.length; ObjID++)
    if ( document.Form1.elements[ObjID].name == ObjName )
    {  return(ObjID);
       break;
    }
  return(-1);
}
function checkOption()
{
var objSelect1=GetObjectID("select1");
var selectedValue=document.Form1.elements[objSelect1].value.substring(0, 2);
if (selectedValue=="其它")
{
   AddOption(prompt("请输入你要添加项目名称:"));
}
}
function AddOption(OptionValue)
{
var objSelect1=GetObjectID("select1");
var j=document.Form1.elements[objSelect1].length;
document.Form1.elements[objSelect1].options[j]= new Option(OptionValue,OptionValue);
document.Form1.elements[objSelect1].options[j-1].swapNode(document.Form1.elements[objSelect1].options[j])
document.Form1.elements[objSelect1].options[j-1].selected=true
}
</script>
<select name="select1" onchange="checkOption()">
            <option selected value="">请选择型号</option>
            <option value="304/2B">304/2B</option>
            <option value="304/BA">304/BA</option>
            <option value="304/HL">304/HL</option>
            <option value="304/NO.4">304/NO.4</option>
            <option value="304/沙板">304/沙板</option>
            <option value="304/雪花沙板">304/雪花沙板</option>
            <option value="304/8K">304/8K</option>
            <option value="304/钛金">304/钛金</option>
            <option value="304/直纹沙">304/直纹沙</option>
            <option value="304/拉丝沙">304/拉丝沙</option>
            <option value="309/2B">309/2B</option>
            <option value="310S/2B">310S/2B</option>
            <option value="316/2B">316/2B</option>
            <option value="316L/2B">316L/2B</option>
            <option value="321/2B">321/2B</option>
            <option value="430/2B">430/2B</option>
            <option value="430/BA">430/BA</option>
            <option value="430/NO.4">430/NO.4</option>
            <option value="其它">其它(自定义)</option>
</select></form>

解决方案 »

  1.   

    http://expert.csdn.net/Expert/topic/2339/2339283.xml?temp=.4017603
      

  2.   

    http://expert.csdn.net/Expert/topic/2053/2053699.xml?temp=.4160425
      

  3.   

    不是这样的,我的每次查询得到的结果批量动态添加到option里,并且都要清掉上一次的结果,每次查询回来返回的结果是不一样的。我用了iframe。
      

  4.   

    a.jsp 页面上:
    <select name="FCoalNo" id="FCoalNo" style="WIDTH: 170px">
    </select>function setnullFcoal()
    {
    for(var k=0;k<FCoalNo.options.length;k++)
    {
    document.all.FCoalNo.options.remove(k);
    }
    }
    iframe查询结果重置页面上的FCoalNo的option的内容:
    <script language=javascript>
    //煤种
    <%
    int m=0;
    for(m=0;m<count;m++)
    {
    %>
    parent.document.all.FCoalNo.options[parent.document.all.FCoalNo.options.length]=new Option("<%=coal_fnam.elementAt(m)%>","<%=coal_fin.elementAt(m)%>");
    <%
    }
    %>
    parent.document.all.FCoalNo.selectedIndex=0;
    </script>
      

  5.   

    obj.innerHTML=""
    or
    obj.length=0
      

  6.   

    我用setnullFcoal()方法的确是清空了页面上的option内容,不过,好像再次创建option对象时,上次的内容缓存下来了,新的结果只是追加在原来的结果后面。
    每次刷新页面重新操作时,第一次结果都是正确的。
      

  7.   

    清空为 select1.options.length=0;
    添加为 select1.options[1]=new Option("text","value");
      

  8.   

    <select id=s1></select>
    <button onclick="s1.options[3]=new Option('text','value')">添加
    <button onclick="s1.options.length=0">清空
      

  9.   

    function clearOptions(selectobj)
    {
       for(var i = 0;i<selectobj.options.length;i++)
       {
           selectobj.options.remove(0);
        }
    }
      

  10.   

    可能是页面缓存的问题
    尝试情况缓存
    asp:
    Response.Buffer = True 
    Response.ExpiresAbsolute = Now() - 1 
    Response.Expires = 0 
    Response.CacheControl = "no-cache"
      

  11.   

    <select id=s1>
    <option>1</option>
    <option>2</option>
    ......
    </select>
    <script>
    window.s1.innerHTML=''  //清空
    window.s1.innerHTML="<option>a</option><option>b</option>......"
    </script>