• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

dhl:ASP.NETMVC+Jquery实现Ajax下拉框数据2或3级联动(+用户控件) ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

注明:ASP.NET MVC 2.0 ,作者:杜宏雷

页面:

<%Html.RenderAction("LessonGroup","Home"); %> 

用户控件:

 

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<%@ Import Namespace="Taoxue.Entities" %>
<script type="text/javascript" language="javascript">
    $(document).ready(function() {
        $("#firstGroup").change(function () { GetSecondGroup() });
    });
    
    function GetSecondGroup() {
        $("#secondGroup").empty();
        var url = "/Home/GetSecondLessonGroupList/" + $("#firstGroup").val();
        $.getJSON(url, function (data) {
            //alert(data);
            $.each(data, function (i, item) {
                $("<option></option>")
                    .val(item["KID"])
                    .text(item["MemberName"])
                    .appendTo($("#secondGroup"));
            });
            //GetThreeGroup(); 或3级联动 
        });

    }
</script>
<div class="cx_left">
    <select name="firstGroup" >
        <%var lessonGroups = ViewData["firstGroup"] as List<Dictionary>;
          if (lessonGroups != null && lessonGroups.Count > 0)
          {
              foreach (Dictionary dictionary in lessonGroups)
              {
        %>        
        <option value="<%=dictionary.KID%>">
            <%=dictionary.MemberName%></option>
        <%
}
      }
        %>
    </select>
</div>
<div class="cx_middle">
    <select >
                <%var secondGroup = ViewData["secondGroup"] as List<Dictionary>;
                  if (secondGroup != null && secondGroup.Count > 0)
          {
              foreach (Dictionary dictionary in secondGroup)
              {
        %>        
        <option value="<%=dictionary.KID%>">
            <%=dictionary.MemberName%></option>
        <%
}
      }
        %>
    </select>
</div>

 

HomeController :

 [ActionName("LessonGroup")]
        [ChildActionOnly]
        public ActionResult LessonGroupControl()
        {
            var taokeClient = new TaokeService.TaokeClient();
            var allLessonGroupList = taokeClient.GetAllLessonGroupList();
            List<Dictionary> firstGroup = allLessonGroupList.Where(uu=>uu.ParentCode==string.Empty).ToList();
            Dictionary first = firstGroup.FirstOrDefault();
            string memberCode = (first != null) ? first.MemberCode : "";
            List<Dictionary> secondGroup = allLessonGroupList.Where(uu => uu.ParentCode == memberCode).ToList();
            ViewData["firstGroup"] = firstGroup;
            ViewData["secondGroup"] = secondGroup;
            return PartialView("LessonGroup");
        }
        /// <summary>
        /// 2级联动下拉框的数据
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult GetSecondLessonGroupList(int id)
        {
            if(!Request.IsAjaxRequest())
            {
                return Content("非法调用,不合法行为!");
            }
            var taokeClient = new TaokeService.TaokeClient();
            var allLessonGroupList = taokeClient.GetAllLessonGroupList();
            var curGroup = allLessonGroupList.Where(uu => uu.KID == id).FirstOrDefault();
            string memberCode = (curGroup != null) ? curGroup.MemberCode : "";
            var v = from l in allLessonGroupList where l.ParentCode == memberCode select l;
            List<Dictionary> list = v.ToList();
            return Json(list, JsonRequestBehavior.AllowGet);
        }

数据:

前台:

 

  


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
【译】ASP.NET MVC 5 教程 - 10:添加验证发布时间:2022-07-10
下一篇:
(推荐)asp.net UrlRewrite 技术的实现发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap