JavaScript

超轻量级php框架startmvc

easyui下拉框动态级联加载的示例代码

更新时间:2020-06-17 17:36:01 作者:startmvc
easyui的下拉框动态加载数据,高校中要根据首先查询所有学院,然后根据学院动态加载课程

easyui的下拉框动态加载数据,高校中要根据首先查询所有学院,然后根据学院动态加载课程。下面看如何实现。

1.界面效果

2. html + js代码


<span>学院名称:</span> 
<input class="easyui-combobox" style="width:30%;" id="collegeName"> 
<span>课程名称:</span> 
<input class="easyui-combobox" style="width:30%;" id="courseName"><br/> 

$(function() { 
 // 下拉框选择控件,下拉框的内容是动态查询数据库信息 
 $('#collegeName').combobox({ 
 url:'${pageContext.request.contextPath}/loadInstitution', 
 editable:false, //不可编辑状态 
 cache: false, 
 panelHeight: '150', 
 valueField:'id', 
 textField:'institutionName', 
 
 onHidePanel: function(){ 
 $("#courseName").combobox("setValue",'');//清空课程 
 var id = $('#collegeName').combobox('getValue'); 
 //alert(id); 
 
 $.ajax({ 
 type: "POST", 
 url: '${pageContext.request.contextPath}/loadCourse?id=' + id, 
 cache: false, 
 dataType : "json", 
 success: function(data){ 
 $("#courseName").combobox("loadData",data); 
 } 
 }); 
 } 
}); 
 
 $('#courseName').combobox({ 
 //url:'itemManage!categorytbl', 
 editable:false, //不可编辑状态 
 cache: false, 
 panelHeight: '150',//自动高度适合 
 valueField:'id', 
 textField:'courseName' 
 }); 
 
}); 

3.后台代码


@RequestMapping("/loadInstitution") 
 /** 
 * 加载学院 
 * @param 
 * @param 
 * @return void 
 * @exception/throws [违例类型] [违例说明] 
 * @see [类、类#方法、类#成员] 
 * @deprecated 
 */ 
 public void loadInstitute(HttpServletRequest request, 
 HttpServletResponse response) throws Exception { 
 try { 
 JackJsonUtils JackJsonUtils = new JackJsonUtils(); 
 List<Institution> institutionList = institutionBean 
 .queryAllColleage(); 
 System.out.println("学院list大小=====" + institutionList.size()); 
 String result = JackJsonUtils.BeanToJson(institutionList); 
 System.out.println(result); 
 JsonUtils.outJson(response, result); 
 } catch (Exception e) { 
 logger.error("加载学院失败", e); 
 } 
 } 
 
 @RequestMapping("/loadCourse") 
 /** 
 * 动态加载课程 
 * 
 * 
 * @param 
 * @param 
 * @return void 
 * @exception/throws [违例类型] [违例说明] 
 * @see [类、类#方法、类#成员] 
 * @deprecated 
 */ 
 public void loadCourse(HttpServletRequest request, 
 HttpServletResponse response) throws Exception { 
 JackJsonUtils JackJsonUtils = new JackJsonUtils(); 
 String id = request.getParameter("id"); 
 System.out.println("学院id====" + id); 
 try { 
 if(id != null && id != ""){ 
 List<CourseInfo> listCourseInfoList = courseBean 
 .queryAllCourseInfos(id); 
 System.out.println("课程list大小=====" + listCourseInfoList.size()); 
 String result = JackJsonUtils.BeanToJson(listCourseInfoList); 
 System.out.println(result); 
 JsonUtils.outJson(response, result); 
 } 
 } catch (Exception e) { 
 logger.error("加载课程失败", e); 
 } 
 } 
 

根据基础提供的接口查询学院和课程,转换为json格式后绑定到前台控件上。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

easyui下拉框动态级联 easyui下拉框级联 easyui 动态下拉框