我有一个<select>里有几个<option>当我选择某一个时,我就对它进行提交,提交后又返回到本页面,这时候<select>选中的是第一项,我要怎样才能让它继续保留我提交前选中的项啊

解决方案 »

  1.   

    页面被刷新了,这个需要 Server 端处理,js 无能为力
      

  2.   

    可以把提交的值,传给刷新的页面,然后接着把这个值 赋给select
      

  3.   

    不知道你用的是java还是.net
    总的来说要保存的request中,重新赋值select的selectValueps:java中(Struts等)一般设定了,它会自动绑定
      

  4.   

    以下代码可以参考:
    <select name="minuteS" onchange="clearCheckbox();">
        <option value="" selected="selected">--</option>
         <s:iterator value="list">
               <s:if test="${minuteS}==${id}"> 
                   <option value="${id}" selected="selected">${name}</option>
               </s:if> 
               <s:else>  
                   <option value="${id}">${name}</option>
               </s:else> 
        </s:iterator>  
    </select>
      

  5.   

    那你只有利用js来设置cookie了,这样可以
      

  6.   

    js怎么设置cookie呢?能举个例子吗?
      

  7.   

    其实设置到服务器端也很简单的
    如果是.net 那就存于viewstate中,然后在JS里面获取这个值就好了var opvalue='<%=viewstate["opvalue"]%>';<select ID="ddlValue" onchange="clearCheckbox();"> 
        <option value="0" selected="selected">-- </option>
        <option value="1" selected="selected">-- </option> 
    </select>
    ddlValue=document.getElementById('ddlValue');
    SelectedOfValue(ddlValue,opvalue)
    function SelectedOfValue(obj,value)
    {
    for(i=0;i<obj.options.length;i++)
    {
    if(obj.options[i].value==value)
    {
    obj.options[i].selected=true
    return true;
    }
    }
    return false;
    }希望对你有所帮助,别忘了,给分,敲代码,不容易·· ^_^
      

  8.   

    如果是.net,用.net的服务器控件dropdownlist会自动保存状态的~
      

  9.   

    还有一个解决办法,那就是通过URL传值好了···
    DDL触发服务器事件的时候,传一个参数过去?DDLValue=value;
    然后通过JS获取URL的这个值来处理。
      

  10.   

    提交给本页面,应该通过request对象是可以获取到的呀<%
    String s = request.getParameter("s");
    %>
    <form name="form1" action="">
    <select name="s" onchange="document.form1.submit()">
    <option value="1" <%if(s.equals("1")){%>selected<%}%>>1</option>
    <option value="2" <%if(s.equals("2")){%>selected<%}%>>2</option>
    <option value="3" <%if(s.equals("3")){%>selected<%}%>>3</option>
    </select>
    </form>