- var xmlHttp;
- function creatXMLHttpRequest() {
- if (window.ActiveXObject) {
- xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
- }
- else if (window.XMLHttpRequest) {
- xmlHttp = new XMLHttpRequest();
- }
- else {
- return;
- }
- }
- //提交部门下拉框选择内容
- function select_change(){
- var depart = document.getElementById("form1:dropDown15").value;
- if(depart != ""){
- creatXMLHttpRequest();
- var url = "/HRMS/faces/employee/Page1.jsp?depart=" + depart;
- xmlHttp.open("GET",url,true);
- xmlHttp.onreadystatechange = showMembers;
- xmlHttp.setRequestHeader("If-Modified-Since","0");
- xmlHttp.send();
- }else{
- ClearOption(document.getElementById("form1:dropDown17"));
- }
- }
- //根据部门返回的职工列表动态加载数据
- function showMembers(){
- if(xmlHttp.readystate == 4){
- if(xmlHttp.status == 200){
- var tmpTeam = xmlHttp.responseXML;
- ClearOption(document.getElementById("form1:dropDown17"));
- var arrTmp = tmpTeam.getElementsByTagName("members");
- for(var i = 0;i <arrTmp.length;i++){
- var oOption = document.createElement("option");
- document.getElementById("form1:dropDown17").options.add(oOption);
- oOption.innerText = arrTmp[i].childNodes[1].firstChild.data;
- oOption.value = arrTmp[i].childNodes[0].firstChild.data;
- }
- }else{
- //alert("您请求的页面有异常");
- }
- }else{
- //alert("信息没有返回请等等待");
- }
- }
后台代码:
- BaseHibernateDAO teamdao = new BaseHibernateDAO();
- try{
- String teamTmp = "";
- String teamTmp1 = "";
- HttpServletRequest request = (HttpServletRequest)this.getFacesContext().getExternalContext().getRequest();
- String depart = request.getParameter("depart");
- String strcity = request.getParameter("city");
- if(depart != null){
- HttpServletResponse res = (HttpServletResponse)this.getFacesContext().getExternalContext().getResponse();
- DepartMentServer dms = new DepartMentServer();
- DbDepartMent departDB = new DbDepartMent();
- String teamsql = "select * from team where departcode='"+ depart +"'";
- SQLQuery teamquery = teamdao.getSession().createSQLQuery(teamsql);
- teamquery.addEntity(Team.class);
- ArrayList<Team> idlist = (ArrayList<Team>) teamquery.list();
- for(int i=0;i<idlist.size();i++){
- if(teamTmp == ""){
- teamTmp = "<?xml version=/"1.0/" encoding=/"utf-8/"?>/r/n" + "<member>" + "<members>" +
- "<id>" + String.valueOf(idlist.get(i).getId()) + "</id>" +
- "<name>" + idlist.get(i).getTeam() + "</name>";
- }
- else{
- if(String.valueOf(idlist.get(i).getId()) != String.valueOf(idlist.get(i-1).getId())){
- teamTmp += "</members>" + "<members>" +
- "<id>" + String.valueOf(idlist.get(i).getId()) + "</id>" +
- "<name>" + idlist.get(i).getTeam() + "</name>";
- }else{
- teamTmp += "<name>" + idlist.get(i).getTeam() + "</name>" ;
- }
- }
- }
- if(idlist.size() > 0) teamTmp += "</members>";
- teamTmp += "</member>";
- res.setContentType("text/xml;charset=UTF-8");
- res.getOutputStream().print(teamTmp);
- res.getOutputStream().flush();
- res.notify();
- res.getOutputStream().close();
- }