zoukankan      html  css  js  c++  java
  • asp.net mvc 两级分类联动方法示例


    前台视图代码

    <%:Html.DropDownList("AwardClassMainID","请选择")%>

    <%:Html.DropDownList("SubID",new List<SelectListItem> { (new SelectListItem(){Text="请选择",Value="0"})})%>

    //jquery代码

          $("#AwardClassMainID").change(function () {

                   var url ="../AwardSubClasic/GetClasicList/"; //规则是控制器/方法/参数

                   $.getJSON(url, { firstclassid:$("#AwardClassMainID").val() }, function (data) {

                       $('#SubID').html('');

                       $('#SubID').append("<optionvalue=0>请选择</option>")

                       $.each(data, function (i,item) {

    $('#SubID').append($("<option></option>").val(item.SecondClassID).html(item.ClassName));

                       });

                   });

              });

    后台Controller里代码

    //view里面加一级分类的数据

    ViewBag.AwardClassMainID = new SelectList(bll.GetAll(),"ClassID", "ClassName");

    <summary>

    /// json返回数据-通过分类ID,查询此分类的二级分类

    /// </summary>

    /// <param name="id">一级分类ID</param>

    /// <returns></returns>

    [HttpGet]

    public JsonResult GetClasicList(string firstclassid)

    {

     List< TrainingSecondClass > Classlist = m_BLL.GetClassDropDwonList(firstclassid);

     return Json(Classlist.ToList<AwardSubClasic>(),JsonRequestBehavior.AllowGet);

    }

    IBLL里面加接口声明

    List<TrainingSecondClass>GetClassDropDwonList(string id);

    BLL里面

    public List<TrainingSecondClass> GetClassDropDwonList(stringid)

          {

              return repository.GetClassDropDwonList(db,id).ToList<TrainingSecondClass>();

          }

    repository里面加实现方法

           public List<TrainingSecondClass>GetClassDropDwonList(SysEntities db, string FirstClassID)

          {

              List<TrainingSecondClass> result =new List<TrainingSecondClass>();

              var n = db.TrainingSecondClass.Where(p => p.FirstClassID ==FirstClassID).ToList();

              foreach (var c in n)

              {

                   result.Add(new TrainingSecondClass

                   {//取出json调用的数据

                       SecondClassID =c.SecondClassID,

                       ClassName = c.ClassName

                   });

              }

              return result;

          }

  • 相关阅读:
    史上不全 ——LINQ to SQL语句
    asp.net mvc 5 后台操作
    asp.netmvc 前台基本控件操作
    ef6+asp.net MVC5+bootstrap3
    个人改造方法调用接口文档
    mvc开发过程中遇到的一些小问题修改
    FileUpload1 在部分浏览器中实现多选
    时间字段 输入空值显示为1900-1-1的解决办法,在asp.net 后台处理
    ASP.NET-C#中字符串操作
    保留多行文本框的换行与空格样式,并转义HTML标记的尖括号
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3231099.html
Copyright © 2011-2022 走看看