jsp多条件查询及查询结果在同一页面显示(原创)
第一步,建立main.jsp页面,使用frameset分上下两个框架,上部是query.jsp.下部是detail 。detail显示的是showdetail.jsp的页面
<title>hello</title> </head> <frameset rows="15%,85%" frameborder="no" > <frame src="query.jsp" name="index" scrolling="no" noresize="noresize" id="topFrame" title="topFrame"> <frame name="detail" src="showTodolist.jsp?page=1" id="mainFrame" title="mainFrame">//src设置第一次加载显示的界面 </frameset> <body> </body> </html>
第二部,建立query.jsp页面。action为showdetail.jsp. target为detail和main.jsp总的detail向对应。这样query.jsp的查询结果就会显示在detail
<body> <center> <form action="showdetail.jsp?page=1" target="detail" method="post"> 编号 <input type="text" size="30" name="bh"/> 姓名<input type="text" size="30" name="xm"/> <input type="submit" value="查询"/> </form></center> </body>
第三部,建立showdetail.jsp页面
(1)获取bh和xm的值,并进行检索 将结果显示在showdetial页面
<% request.setCharacterEncoding("UTF-8"); String pageStr = request.getParameter("page"); if(pageStr==null) pageStr=""; String bh = request.getParameter("bh"); if(bh==null) bh=""; String xm= request.getParameter("xm"); if(xm==null) xm=""; .......//按照bh和xm的值进行检索 %> <% ....//将结果进行展示
//可参照我的一片文章关于jsp的分页显示查询结果 %>
(2)在showdetail.jsp的结尾。 把参数bh和xm连接上,这样就能根据输入条件展示下一页内容。
<tr><td width=100% bgcolor="#eeeeee" colspan=4 align="center"> <a href="showdetail.jsp?page=1&bh=<%=bh%>&xm=<%=xm%>">首页</a> <a href="showdetail.jsp?page=<%=(currentPage - 1)%>&bh=<%=bh%>&xm=<%=xm%>">上页</a> <a href="showdetail.jsp?page=<%=(currentPage + 1)%>&bh=<%=bh%>&xm=<%=xm%>">下页</a> <a href="showdetail.jsp?page=<%=pUtil.getPageCount()%>&bh=<%=bh%>&xm=<%=xm%>">末页</a> </td></tr>