请问一下怎样提交请求后下拉列表的状态不会改变?<select name="a" > 
<option value="0">全部</option>
<option value="1">男</option>
 <option value="2">女</option>
</select>比如像上面那样,当选中“男”,然后进行搜索,通过服务器返回来后下拉列表的第一个是显示全部的,怎样才能让它的状态显示为“男”?

解决方案 »

  1.   

    只能通过传递参数吧,根据参数,设置哪个option 是selected
      

  2.   

    点击“男”之后,返回页面之前,后台得到选择的这个选项"男",然后set attribute,前台判断,获取到上次的选项<option value="1" selected>男 </option> 
      

  3.   

    el表达式简单点。或者直接 <%if()out.println();%>
      

  4.   

    把选择的值“男”经过后台再传回前台页面
    后台request.setAttribute("aValue",request.getParameter("a"));
    前台
    String aValue = request.getAttribute("aValue");
    <select name="a" >
    <option value="0">全部 </option>
    <option value="1" <%="1".equals(aValue)?"selected=\"selected\"":""%> >男 </option>
    <option value="2" <%="2".equals(aValue)?"selected=\"selected\"":""%> >女 </option>
    </select> 
    选项太多可以通过循环写