easyui中實現多個下拉列表聯動
阿新 • • 發佈:2019-01-01
先看下原始碼
<script type="text/javascript" charset="UTF-8"> $(function() { var provinceId = $('#provinceId').combobox({ url : 'provinceAction', editable : true, valueField : 'proname', textField : 'province', width:'150', onSelect : function(record) { //重新整理資料,重新讀取省份下的城市,並清空當前輸入的值 cityId.combobox({ disabled : false, method : 'post', url : 'cityAction?province=' + record.province, valueField : 'city', textField : 'cityname' }).combobox('clear'); } }); var cityId = $('#cityId').combobox({ disabled : false, editable : false, width:'150', url : 'cityAction?province=' + provinceId.val(), valueField : 'cityname', textField : 'city', onSelect : function(record) { //重新整理資料,重新讀取省份下的城市,並清空當前輸入的值 hosId.combobox({ disabled : false, method : 'post', url : 'hosAction?city=' + record.city, valueField : 'hospitalid', textField : 'hospitalname' }).combobox('clear'); } }); var hosId = $('#hosId').combobox({ disabled : false, url : 'hosAction?city=' + cityId.val(), valueField : 'hospitalid', textField : 'hospitalname', width:'150' }); var departmentid = $('#departmentid').combobox({ disabled : false, width:'150' }); }); </script>
package com.healthcloud.framework.subsystem.guiding.action; import java.io.IOException; import java.io.PrintWriter; import java.util.List; import javax.annotation.Resource; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.ParentPackage; import com.healthcloud.framework.core.base.action.BaseAction; import com.healthcloud.framework.subsystem.guiding.service.ProvinceService; import com.healthcloud.framework.subsystem.model.Province; //@Controller //標註控制層的主鍵 @ParentPackage("json-default") public class ProvinceAction extends BaseAction { private static final long serialVersionUID = 1L; @Resource private ProvinceService provinceService; @Action(value = "provinceAction", params= { "contentType", "text/html" }) @Override public String execute() { try { //System.out.println("hhhhh"); httpServletResponse.setCharacterEncoding("UTF-8"); PrintWriter out = httpServletResponse.getWriter(); JSONObject jsonobj = new JSONObject(); JSONArray jsonArray = new JSONArray(); List<Province> provinceList = provinceService.findAll(); for (Province pro : provinceList) { jsonobj.put("proname", pro.getProvincename()); jsonobj.put("province", pro.getProvincename()); jsonobj=JSONObject.fromObject(jsonobj); jsonArray.add(jsonobj); } out.print(jsonArray); out.flush(); out.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } }
package com.healthcloud.framework.subsystem.guiding.action; import java.io.IOException; import java.io.PrintWriter; import java.util.List; import javax.annotation.Resource; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import org.apache.struts2.ServletActionContext; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.ParentPackage; import com.healthcloud.framework.core.base.action.BaseAction; import com.healthcloud.framework.core.base.search.Search; import com.healthcloud.framework.subsystem.guiding.service.CityService; import com.healthcloud.framework.subsystem.model.City; //@Controller //標註控制層的主鍵 @ParentPackage("json-default") public class CityAction extends BaseAction { private static final long serialVersionUID = 1L; private String province; public String getProvince() { return province; } public void setProvinve(String province) { this.province = province; } @Resource private CityService cityService; public CityService getCityService() { return cityService; } public void setCityService(CityService cityService) { this.cityService = cityService; } @Action(value = "cityAction", params= { "contentType", "text/html" }) @Override public String execute() { try { httpServletResponse.setCharacterEncoding("UTF-8"); PrintWriter out = httpServletResponse.getWriter(); JSONObject jsonobj = new JSONObject(); JSONArray jsonArray = new JSONArray(); province=new String(ServletActionContext.getRequest().getParameter("province").getBytes("ISO-8859-1"),"UTF-8"); Search search = new Search(); search.addFilterEqual("proname", province); List<City> cityList = cityService.search(search); for (City city : cityList) { jsonobj.put("cityname", city.getCityname()); jsonobj.put("city", city.getCityname()); jsonobj=JSONObject.fromObject(jsonobj); jsonArray.add(jsonobj); } out.print(jsonArray); out.flush(); out.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } }