下拉列表的问题,在线等
我的JSP中的下拉列表 选项是一个链接 提交给servlet处理
但是显示还是JSP上,但有个问题 就是选中以后页面跳转了 由于页面刷新了
开始选中的项没有显示 显示的还是 默认的开始的选项 怎么解决呢、
<select name="select" id="select" class="select" onchange="window.location=this.value">
<%
for(KeyValue<TitleType,Long> kv:titleTypeList)
{
TitleType tt=kv.getKey();
%>
<option value="AddTitleServlet?id=<%=tt.getId() %>" ><%=tt.getTitleTypeName() %></option>
<%
}
%>
</select>~~~~~
------解决方案--------------------
在你的onchange事件里把那个值取到存起来,等是servlet跳转到这个页面后在<body onload="init()">
init()方法中再把存起来的值放到那个select中。
------解决方案--------------------
<option value="AddTitleServlet?id=<%=tt.getId() %> 这里选中之后会提交到Servlet进行业务处理,然后转向时将tt.getId()再传回界面,比如request.setAttribute("ttId", tt.getId());
如果是重定向的话就需要将tt.getId()加在重定向的url后面。
页面上就可以获取到之前传过去的tt.getId()的值。用变量ttId保存此值。此时在<option>里进行判断。
//假设tt.getId()是int类型
<option value="AddTitleServlet?id=<%=tt.getId() %>" <%if(tt.getId() == ttId){%>select="selected"<%}%>>
这样就可以选中之前点选的了。
第一次进入该页面的时候,由于ttId是空的,理论上是不会选中任何一项(未测试)。
之后每次点击,转向后都会选中之前点击的。