首页 >web前端 >js教程 >在easy中有关ui下拉框动态级联加载

在easy中有关ui下拉框动态级联加载

亚连
亚连原创
2018-06-23 15:46:281449浏览

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

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格式后绑定到前台控件上。

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

使用Electron构建React+Webpack桌面应用(详细教程)

在微信小程序中如何才能实现左右滑动

在JavaScript中有哪些特殊数据类型

在微信小程序中如何使用ajax实现请求服务器数据

以上是在easy中有关ui下拉框动态级联加载的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn