jsp中的一个下拉列表实例
来源:互联网 发布:微信矩阵营销 编辑:程序博客网 时间:2024/05/20 18:00
最近在写一个网站后台,用到了一个下拉列表,在这将代码贴出来供大家参考!(水平有限)实现的效果如下:
代码只要涉及三个文件,两个servlet文件:UserListServlet.java (负责在数据库中查询全部用户记录)和UserListByPowerServlet.java(主要根据权限来查询相关记录,当权限是“全部”时,会从此文件跳转到UserListServlet文件让其执行),还有一个jsp文件,UserList.jsp(负责显示查询的数据)
UserListServlet.java
public class UserListServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { doPost(request ,response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setCharacterEncoding("utf-8");request.setCharacterEncoding("utf-8");String pNo=request.getParameter("pNo");if(pNo==null || pNo.equals("") || pNo.trim().equals("0")){pNo="1";}oj_UserDao ud=new oj_UserDaoImpl();int pageSize=10;List list=ud.getUserList(Integer.parseInt(pNo), pageSize);int totalCount=ud.totalCount();int pageCount=totalCount%pageSize==0?totalCount/pageSize:totalCount/pageSize+1;request.setAttribute("pNo", pNo);request.setAttribute("totalCount", totalCount);request.setAttribute("pageCount" ,pageCount);request.setAttribute("userList", list); request.setAttribute("power","全部");request.getRequestDispatcher("tab/UserList.jsp").forward(request, response);}}
UserListByPowerServlet.java
public class UserListByPowerServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { doPost(request,response);} public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setCharacterEncoding("utf-8");request.setCharacterEncoding("utf-8");String power=request.getParameter("power");if(power.equals("全部")){request.getRequestDispatcher("userListServlet").forward(request, response);}String pNo=request.getParameter("pNo");if(pNo==null || pNo.equals("") || pNo.trim().equals("0")){pNo="1";}oj_UserDao ud=new oj_UserDaoImpl();int pageSize=10;List list=ud.getUserList2(power,Integer.parseInt(pNo), pageSize);int totalCount=ud.totalCount2(power);int pageCount=totalCount%pageSize==0?totalCount/pageSize:totalCount/pageSize+1;request.setAttribute("pNo", pNo);request.setAttribute("totalCount", totalCount);request.setAttribute("pageCount" ,pageCount);request.setAttribute("userList", list); request.setAttribute("power", power);request.getRequestDispatcher("tab/UserList.jsp").forward(request, response); }}
public class UserListByPowerServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { doPost(request,response);} public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setCharacterEncoding("utf-8");request.setCharacterEncoding("utf-8");String power=request.getParameter("power");if(power.equals("全部")){request.getRequestDispatcher("userListServlet").forward(request, response);}String pNo=request.getParameter("pNo");if(pNo==null || pNo.equals("") || pNo.trim().equals("0")){pNo="1";}oj_UserDao ud=new oj_UserDaoImpl();int pageSize=10;List list=ud.getUserList2(power,Integer.parseInt(pNo), pageSize);int totalCount=ud.totalCount2(power);int pageCount=totalCount%pageSize==0?totalCount/pageSize:totalCount/pageSize+1;request.setAttribute("pNo", pNo);request.setAttribute("totalCount", totalCount);request.setAttribute("pageCount" ,pageCount);request.setAttribute("userList", list); request.setAttribute("power", power);request.getRequestDispatcher("tab/UserList.jsp").forward(request, response); }}
UserList.jsp(没必要看所有的,只看与下拉列表相关的mygetmoredata()js函数,和select下拉列表)
<%@ page language="java" import="java.util.*,model.oj_user" pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style type="text/css"><!--body {margin-left: 3px;margin-top: 0px;margin-right: 3px;margin-bottom: 0px;}.STYLE1 {color: #e1e2e3;font-size: 12px;}.STYLE6 {color: #000000; font-size: 12; }.STYLE10 {color: #000000; font-size: 12px; }.STYLE19 {color: #344b50;font-size: 12px;}.STYLE21 {font-size: 12px;color: #3b6375;}.STYLE22 {font-size: 12px;color: #295568;} a:link { text-decoration: none;color: blue} a:active { text-decoration:blink} a:hover { text-decoration:underline;color: red} a:visited { text-decoration: none;color: green}img {border:0px}--></style><script>function doLogin(){var form=document.getElementById("Form");form.submit();}function checkAll(e, itemName) { var aa = document.getElementsByName(itemName); for (var i=0; i<aa.length; i++) aa[i].checked = e.checked; } function checkItem(e, allName) { var all = document.getElementsByName(allName)[0]; if(!e.checked) all.checked = false; else { var aa = document.getElementsByName(e.name); for (var i=0; i<aa.length; i++) if(!aa[i].checked) return; all.checked = true; } } function deleChecked(){var url1="deleteManyUserServlet?";var users1=document.getElementsByName("mm");for(var i=0;i<users1.length;i++){if(users1[i].checked){url1=url1+"uid="+users1[i].value;if(i!=users1.length-1){url1=url1+"&";}}}if(url1=="deleteManyUserServlet?"){alert("请选择删除记录");return ;}window.location=url1;}
function mygetmoredata() { myGetMoreDataForm.submit(); }
</script></head><body> <% List<oj_user> userList=(List<oj_user>)request.getAttribute("userList"); int totalCount=Integer.parseInt(request.getAttribute("totalCount").toString()); String s=request.getAttribute("pageCount").toString(); int pageCount=Integer.parseInt(s); String power=request.getAttribute("power").toString(); int pNo=Integer.parseInt(request.getAttribute("pNo").toString()); %><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td height="30"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="24" bgcolor="#353c44"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td><table width="100%" border="0" cellspacing="0" cellpadding="0"> <form method="POST" name="myGetMoreDataForm" action="userListByPowerServlet"> <tr> <td width="6%" height="19" valign="bottom"><div align="center"><img src="images/tb.gif" width="14" height="14" /></div></td> <td width="80%" valign="bottom"><span class="STYLE1"> 用户基本信息列表</span></td> <td width="94%" valign="bottom"><span class="STYLE1"> 按权限查找</span></td> <td width="94%" valign="bottom"><span class="STYLE1"><select size="1" name="power" style="font-family: 宋体; color: #0000FF; font-size: 15px" onChange="javascript:mygetmoredata()"> <% if(power.equals("全部")){ %> <option value="超级管理员" >超级管理员</option><option value="普通管理员">普通管理员</option><option value="普通用户">普通用户</option><option value="全部" selected>全部</option></select><% }else if(power.equals("超级管理员")){%><option value="超级管理员" selected>超级管理员</option><option value="普通管理员">普通管理员</option><option value="普通用户">普通用户</option><option value="全部" >全部</option></select><%} else if(power.equals("普通管理员")){%><option value="超级管理员" >超级管理员</option><option value="普通管理员" selected>普通管理员</option><option value="普通用户">普通用户</option><option value="全部" >全部</option></select><%} else if(power.equals("普通用户")){%><option value="超级管理员" selected>超级管理员</option><option value="普通管理员">普通管理员</option><option value="普通用户" selected>普通用户</option><option value="全部" >全部</option></select><%} %></span></td> </tr><input type="hidden" name="tpa" value="0"></form> </table></td> <td><div align="right"><span class="STYLE1"> <input type="checkbox" name=mmAll id="checkbox11" onclick="checkAll(this, 'mm')"/> 全选 <img src="images/add.gif" width="10" height="10" /> 添加 <img src="images/del.gif" width="10" height="10" /> <a href="#" onclick="deleChecked()">删除</a> </span><span class="STYLE1"> </span></div></td> </tr> </table></td> </tr> </table></td> </tr> <tr> <td><table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#a8c7ce"> <tr> <td width="4%" height="20" bgcolor="d3eaef" class="STYLE10"><div align="center"> <input type="checkbox" name="checkbox" id="checkbox" /> </div></td> <td width="5%" height="20" bgcolor="d3eaef" class="STYLE6"><div align="center"><span class="STYLE10">序号</span></div></td> <td width="10%" height="20" bgcolor="d3eaef" class="STYLE6"><div align="center"><span class="STYLE10">用户名</span></div></td> <td width="15%" height="20" bgcolor="d3eaef" class="STYLE6"><div align="center"><span class="STYLE10">用户角色</span></div></td> <td width="14%" height="20" bgcolor="d3eaef" class="STYLE6"><div align="center"><span class="STYLE10">密码</span></div></td> <td width="16%" height="20" bgcolor="d3eaef" class="STYLE6"><div align="center"><span class="STYLE10">总提交数</span></div></td> <td width="22%" height="20" bgcolor="d3eaef" class="STYLE6"><div align="center"><span class="STYLE10">通过数</span></div></td> <td width="21%" height="20" bgcolor="d3eaef" class="STYLE6"><div align="center"><span class="STYLE10">基本操作</span></div></td> </tr> <% if(userList!=null){ for(int i=0;i<userList.size();i++){ oj_user user=userList.get(i); %> <tr> <td height="20" bgcolor="#FFFFFF"><div align="center"> <input type=checkbox name=mm value=<%=user.getId() %> onclick="checkItem(this, 'mmAll')"> </div></td> <td height="20" bgcolor="#FFFFFF" class="STYLE6"><div align="center"><span class="STYLE19"><%=i+1%></span></div></td> <td height="20" bgcolor="#FFFFFF" class="STYLE6"><div align="center"><span class="STYLE19"><%= user.getName()%></span></div></td> <td height="20" bgcolor="#FFFFFF" class="STYLE19"><div align="center"><%=user.getPower() %></div></td> <td height="20" bgcolor="#FFFFFF" class="STYLE19"><div align="center"><%=user.getPassword() %></div></td> <td height="20" bgcolor="#FFFFFF" class="STYLE19"><div align="center"><%=user.getTotal() %></div></td> <td height="20" bgcolor="#FFFFFF" class="STYLE19"><div align="center"><%=user.getAccept() %></div></td> <td height="20" bgcolor="#FFFFFF"><div align="center" class="STYLE21"><a href="deleteOneUserServlet?id=<%=user.getId() %>">删除</a> | 编辑 | 查看</div></td> </tr> <% }} %> </table></td> </tr> <tr> <td height="30"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="33%"><div align="left"><span class="STYLE22"> 共有<strong> <%=totalCount %></strong> 条记录,当前第<strong> <%=pNo %></strong> 页,共 <strong><%=pageCount %></strong> 页</span></div></td> <td width="67%"><table width="312" border="0" align="right" cellpadding="0" cellspacing="0"> <form action="userListServlet" method="post" id="Form"> <tr> <td width="49"><div align="center"><a href="userListServlet?pNo=1"><img src="images/first.gif" width="40" height="15" /></a></div></td> <td width="49"><div align="center"><a href="userListServlet?pNo=<%=pNo>1?pNo-1:1 %>"><img src="images/back.gif" width="45" height="15" /></a></div></td> <td width="49"><div align="center"><a href="userListServlet?pNo=<%=pNo>=pageCount?pageCount:pNo+1 %>"><img src="images/next.gif" width="45" height="15" /></a></div></td> <td width="49"><div align="center"><a href="userListServlet?pNo=<%=pageCount %>"><img src="images/last.gif" width="40" height="15" /></a></div></td> <td width="37" class="STYLE22"><div align="center">转到</div></td> <td width="22"><div align="center"> <input type="text" name="textfield" id="textfield" style="width:20px; height:12px; font-size:12px; border:solid 1px #7aaebd;"/> </div></td> <td width="22" class="STYLE22"><div align="center">页</div></td> <td width="35"><img src="images/go.gif" width="30" height="15" onclick="doLogin()"/></td> </tr> </form> </table></td> </tr> </table></td> </tr></table></body></html>
他们之间的关系大致为,当第一次从别的网页要跳到userList.jsp时,首先跳到UserListServlet.jsp查询全部的数据,当在jsp页面按权限查找时,跳到UserListByPowerServlet之后,查询数据,再将数据返回到jsp页面进行显示,当在UserlistByPower遇到的权限是“全部”时,此servlet不进行查询,跳到userlistservlet后,再查询!!!
- jsp中的一个下拉列表实例
- jsp中的下拉列表
- jsp页面中的下拉列表
- JSP实现下拉列表
- jsp - 下拉列表框
- jQuery select2设置默认值为下拉列表中的一个选项
- asp中的下拉列表
- jsp 中 年份下拉列表
- JSP列表形式显示数据库中的数据 OracleCachedRowSet 实例
- 下拉列表设置默认值实例
- JSP 下拉列表框、多行下拉列表框
- 一个简单的下拉列表
- JSP页面下拉列表中选中的值传递到文本框中
- JSP中的打印列表
- 表单中的下拉列表 使用
- HTML中的下拉列表 select
- Html中的下拉列表Select
- iOS UITableView中的下拉列表
- Arcgis javascript api离线地图开发环境搭建- dojo未定义- flex安全沙箱问题
- C#简单数字验证码解析
- 详解Java解析XML的四种方法
- GTK、Qt和wxWidgets
- Xcode调试攻略
- jsp中的一个下拉列表实例
- ajax提交数据(修改、新增)到数据库并刷新数据
- 打印linux内核信息
- Java多线程
- Linux 的 复制命令 【 cp 】 (copy)及其 (常用参数 -fp)
- 黑马程序员----Java(IO流)
- 用Visio画E-R图
- JAVA访问权限控制
- AS3内存泄露