kendo ui treelist popup 模式下 实现下拉框控件形式展示
1、在列后面增加editor和template属性,其中levelDropDownEditor是一个方法,LvDisplayName是下拉框的Text值的字段名(用于在列表里显示)
1 2 3 4 5 | columns: [ { field: "Name", expandable: true, title: "名称", width: 250 }, { field: "Code", title: "编号" }, { field: "Lv", title: "级别", width: "180px", editor: levelDropDownEditor, template: "#=LvDisplayName#" } ] |
2、实现levelDropDownEditor方法,其中的DropdownlistValue,是我加上的特殊标识,用于后台的数据读取,因为后台自定了一个字段名叫:"LvDropdownlistValue"。
function levelDropDownEditor(container, options) { var jqueryElement = $('<input required name="' + options.field + 'DropdownlistValue" />'); jqueryElement .appendTo(container) .kendoDropDownList({ autoBind: true, dataTextField: "DisplayCode", dataValueField: "ParaCode", dataSource: { transport: { read: { dataType: "jsonp", url: "@Url.Content("~/BaseInfoManagement/Department/GetDepartmentLevelList")", } } }, value: options.model.Lv, dataBound: onDataBound }); }
3、后台update方法的实现
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | public JsonResult Update() { dvaContext context = new dvaContext(); JsonResult json = new JsonResult(); var tempObj = new Cust_department_info(); if (ModelState.IsValid) { string jsonData = this .Request[ "models" ]; List<Cust_department_info> lst = JsonConvert.DeserializeObject<List<Cust_department_info>>(jsonData); foreach ( var obj in lst) { var objNew = context.department_info.Find(obj.ID); List<department_info> children = context.department_info.Where(m => m.ParentCode == objNew.Code).ToList(); objNew.Name = obj.Name; objNew.Code = obj.Code; objNew.Lv = obj.LvDropdownlistValue.ParaCode; foreach ( var b in children) { b.ParentCode = objNew.Code; } } context.SaveChanges(); } json.Data = new { success = true , msg = "更新成功!" }; return json; } |
分类:
kendo ui
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?