easyui-combobox url綁定后台json數據問題


<input id="line" name="line" style="max-width:120px;" class="easyui-combobox" data-options="url:'/Common/selectList?selectTable=line&headTitle=true',valueField: 'Value',textField: 'Text',value:0"/>
<input id="proc" name="proc" style="max-width:120px;" class="easyui-combobox" data-options="url:'/Common/selectList?selectTable=proc&headTitle=true',valueField: 'Value',textField: 'Text',value:0" />
<input id="maker" name="maker" style="max-width:120px;" class="easyui-combobox" data-options="url:'/Common/selectList?selectTable=maker&headTitle=true',valueField: 'Value',textField: 'Text',value:0" />

ASP.NET MVC 后台:

  [HttpPost]
        public ActionResult selectList(string selectTable = "", bool headTitle = false, string value = "")
        {
            value = value.Length == 0 ? "0" : value;
            switch (selectTable)
            {
                case "line":
                    List<line> lineList = Business.Produce.Instance.LineEnabledList();
                    if (headTitle)
                        lineList.Insert(0, new line { line_id = 0, name = "選擇產線" });
                    Common.Http.ResponseJson(lineList.Select(m => new SelectListItem { Text = m.name, Value = m.line_id.ToString() }));
                    break;
                case "proc":
                    List<proc> procList = Business.Produce.Instance.GetProcByLineId(Convert.ToInt32(value));
                    if (headTitle)
                        procList.Insert(0, new proc { proc_id = 0, name = "選擇工藝" });
                    Common.Http.ResponseJson(procList.Select(m => new SelectListItem { Text = m.name, Value = m.proc_id.ToString() }));
                    break;
                case "maker":
                    List<maker> makerList = Business.Device.Instance.MakerList();
                    if (headTitle)
                        makerList.Insert(0, new maker { maker_id = 0, name = "選擇廠家" });
                    Common.Http.ResponseJson(makerList.Select(m => new SelectListItem { Text = m.name, Value = m.maker_id.ToString() }));
                    break;
            }
            return null;
        }

調用selectList方法輸出的JSON為:

[{"Disabled":false,"Group":null,"Selected":false,"Text":"測試產線1","Value":"1"}]

特別注意的是: 這條JSON數據,不能出現 單引號, EasyUI-commbobox 插件不支持單引號 ,如[{‘Disabled':false,'Group':null,'Selected':false,'Text':'測試產線1','Value':'1'}],則下拉列表加載不到數據,
所以,后台JSON 最好不要拼接,調用 JsonConvert.SerializeObject(obj, Formatting.None)進行序列化。
打賞

免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2021 CODEPRJ.COM