欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# MVC 使用LayUI實現(xiàn)下拉框二級聯(lián)動的功能

 更新時間:2020年06月28日 11:45:11   作者:TomLucas  
這篇文章主要介紹了C# MVC 如何使用LayUI實現(xiàn)下拉框二級聯(lián)動,文中示例代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解下

一、layui.use

1、LayUI的官方使用文檔:https://www.layui.com/doc/

2、layui的內(nèi)置模塊不是默認(rèn)就加載好的,必須要執(zhí)行啟動模塊的這種方法后模塊才會加載;

3、layui.use就是一種加載模塊的方式。

如下代碼:

//LayUI渲染以及啟動模塊
  layui.use(['form', 'layedit', 'laydate'], function () {
    var form = layui.form,//獲取form模塊
    layer = layui.layer,//獲取layer模塊
    layedit = layui.layedit,//獲取layedit模塊
    laydate = layui.laydate,//獲取laydate模塊
    $ = layui.$;

二、創(chuàng)建控制器或在已有的控制器中添加在操作方法

/// <summary>
  /// 獲取部門信息
  /// </summary>
  [HttpPost]
  public JsonResult GetDeplist()
  {
   using (ERPEntities db = new ERPEntities())
   {
    db.Configuration.ProxyCreationEnabled = false;//關(guān)閉EF的默認(rèn)加載
    var Deplist = db.dep.ToList();
    //將數(shù)據(jù)Json化并傳到前臺視圖
    return Json(new { data = Deplist }, JsonRequestBehavior.AllowGet);
   }
  }

    /// <summary>
   /// 通過部門ID來獲取角色
   /// </summary>
   /// <param name="dep_id">部門ID</param>
   /// <returns></returns>
   [HttpPost]
  public JsonResult GetRolelist(int dep_id)
  {
   using (ERPEntities db = new ERPEntities())
   {
    db.Configuration.ProxyCreationEnabled = false;//關(guān)閉EF的默認(rèn)加載
    var Roles = db.role.Where(r => r.dep_id == dep_id).ToList();//通過部門ID 查找到對應(yīng)的角色
    List<SelectListItem> item = new List<SelectListItem>();
    foreach (var Role in Roles)
    {
     item.Add(new SelectListItem { Text = Role.name, Value = Role.role_id.ToString() });
    }
    //將數(shù)據(jù)Json化并傳到前臺視圖
    return Json(new { data = item }, JsonRequestBehavior.AllowGet);
   }
  }

三、在需要顯示多級聯(lián)動的視圖頁面寫上如下代碼

<!--部門角色二級聯(lián)動-->
 <div class="layui-form-item">
  <label class="layui-form-label">部門:</label>
  <div class="layui-input-inline">
   <select name="Dep" lay-filter="parentDep" id="Dep">
    <option value="">——請選擇部門——</option>
   </select>
  </div>
  <label class="layui-form-label">角色:</label>
  <div class="layui-input-inline">
   <select name="Role" id="Role" lay-filter="RoleInfo">
    <option value="">——請選擇角色——</option>
   </select>
  </div>
 </div>

四、JS部分的代碼

  注意:有的伙伴可能需要先引入jquery;根據(jù)自己的需求以及實際情況進(jìn)行引入

<script src="~/Scripts/jquery-3.5.1.js"></script>
<script type="text/javascript">
  // 封裝獲取角色的函數(shù):通過部門ID得到角色
  function getRoles(data) {
   //獲取到部門框中的Value部門的ID
   var dep_id = {
    dep_id: data.value
   }
   //再利用ajax將數(shù)據(jù)傳到后端,來獲取到對應(yīng)下拉框選項而出現(xiàn)的值
  //檢查項目添加到下拉框中
  $.ajax({
   url: "@Url.Action("GetRolelist")",
   dataType: 'json',
   data: JSON.stringify(dep_id),//將參數(shù)Json化,在傳遞給后臺控制器
   contentType: "application/json",
   type: 'post',
   success: function (result) {
    console.info(result.data);
    $("#Role").empty();//清空下拉框的值
    $.each(result.data, function (index, item) {
     $('#Role').append(new Option(item.Text, item.Value));// 下拉菜單里添加元素
    });
    layui.form.render("select");//重新渲染 固定寫法
   }
  });
 };
 //LayUI渲染以及啟動模塊
  layui.use(['form', 'layedit', 'laydate'], function () {
    var form = layui.form,//獲取form模塊
    layer = layui.layer,//獲取layer模塊
    layedit = layui.layedit,//獲取layedit模塊
    laydate = layui.laydate,//獲取laydate模塊
    $ = layui.$;
    // 得到部門
    $.ajax({
     url: "@Url.Action("GetDeplist")",
     dataType: 'json',
     type: 'post',
     success: function (result) {
       $.each(result.data, function (index, item) {
        $('#Dep').append(new Option(item.name, item.dep_id));// 下拉菜單里添加元素
     });
     layui.form.render("select");//重新渲染 固定寫法
     }
    });
    // 聯(lián)動
    form.on('select(parentDep)', function (data) {
     //監(jiān)聽到了下拉框選擇的選項,傳遞過來
     //console.info(data);
     getRoles(data);
    });
  });
</script>

1.select的chage監(jiān)聽事件使用:

form.on('select(myselect)', function(data){}) 其中myselect是select的 lay-filter屬性值

2.數(shù)據(jù)異步加載到select的option中之后,點擊該select會發(fā)現(xiàn)layui的選中效果不起作用,需要使用
form.render('select');重新渲染一次,就可以正常使用。

聯(lián)動效果如下:

以上就是C# MVC 使用LayUI實現(xiàn)下拉框二級聯(lián)動的功能的詳細(xì)內(nèi)容,更多關(guān)于C# 實現(xiàn)下拉框二級聯(lián)動的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C#12中的Primary?Constructors主構(gòu)造函數(shù)詳解

    C#12中的Primary?Constructors主構(gòu)造函數(shù)詳解

    主構(gòu)造函數(shù)把參數(shù)添加到class與record的類聲明中就是主構(gòu)造函數(shù),這篇文章主要介紹了C#12中的Primary?Constructors 主構(gòu)造函數(shù),需要的朋友可以參考下
    2023-11-11
  • C# Console.WriteLine()用法案例詳解

    C# Console.WriteLine()用法案例詳解

    這篇文章主要介紹了C# Console.WriteLine()用法案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C#實現(xiàn)gRPC服務(wù)和調(diào)用示例詳解

    C#實現(xiàn)gRPC服務(wù)和調(diào)用示例詳解

    gRPC?是一種與語言無關(guān)的高性能遠(yuǎn)程過程調(diào)用?(RPC)?框架,這篇文章主要為大家詳細(xì)介紹了C#如何實現(xiàn)gRPC服務(wù)和調(diào)用,需要的可以參考一下
    2024-01-01
  • C#使用ML.Net完成人工智能預(yù)測

    C#使用ML.Net完成人工智能預(yù)測

    這篇文章主要介紹了C#使用ML.Net完成人工智能預(yù)測的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • c#入門之類型轉(zhuǎn)換詳解

    c#入門之類型轉(zhuǎn)換詳解

    這篇文章主要介紹了c#的類型轉(zhuǎn)換詳解,類型轉(zhuǎn)換分兩種形式:隱式轉(zhuǎn)換、顯示轉(zhuǎn)換,下面是詳細(xì)介紹
    2014-04-04
  • C# 遍歷枚舉類型的所有元素

    C# 遍歷枚舉類型的所有元素

    寫個小東西,剛好用到枚舉類型,需要顯示在DropDownList控件中。嘗試了下,用如下方法可以實現(xiàn)
    2013-03-03
  • C#仿QQ聊天窗口

    C#仿QQ聊天窗口

    這篇文章主要為大家詳細(xì)介紹了C#仿QQ聊天窗口,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • C#實現(xiàn)飛行棋項目

    C#實現(xiàn)飛行棋項目

    這篇文章主要為大家詳細(xì)介紹了C#實現(xiàn)飛行棋項目,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • c#之關(guān)閉窗體的實現(xiàn)方法

    c#之關(guān)閉窗體的實現(xiàn)方法

    這篇文章主要介紹了c#之關(guān)閉窗體的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Unity通過UGUI的Slider調(diào)整物體顏色

    Unity通過UGUI的Slider調(diào)整物體顏色

    這篇文章主要為大家詳細(xì)介紹了Unity通過UGUI的Slider調(diào)整物體顏色,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02

最新評論