• Easy ui DataGrid 添加复选框 与 下拉


    {
        field: 'ObtainCert', title: "是否获证",  50, 
                          editor: { type: 'checkbox',
                                            options: {
                                                     on: 1,
                                                     off: 0 
                                                          }
                                     }
     },
     //* singleSelect: false, false 是可以选择多行 true 只可以选择一行
    

      

     { field: 'TrainResultId', title: '培训结果',  100, align: 'center',
                                        formatter: function (value, row) {
                                            return row.NameCN;
                                        },
                                        editor: {
                                            type: 'combobox',
                                            options: {
                                                valueField: 'Id',
                                                textField: 'NameCN',
                                                url: '<%: Url.Content("~/SysModule/Common/GetAssessStatusList") %>',
                                                required: true
                                                          }
                                                  }
    
     }  ,
    
    
    // 一下是判断是否双击才可以编辑
     onBeforeLoad: function () {
                        $(this).datagrid('rejectChanges');
                    },
                    onLoadSuccess: function (data) {
                        beginEdit();
                    },
                    onClickRow: function (rowIndex) {
                        editingIndex = rowIndex;
                        if (lastIndex != rowIndex) {
                            if ($(this).datagrid('validateRow', lastIndex)) {
                                $(this).datagrid('endEdit', lastIndex);
                                $(this).datagrid('beginEdit', rowIndex);
    
    
                                lastIndex = rowIndex;
                            } else {
                                $(this).datagrid('selectRow', lastIndex);
                                editingIndex = lastIndex;
                            }
                        }
                    },
                    onAfterEdit: function (rowIndex, rowData, chanages) {
                    }
                });
    
    
    
    
            });
    
            function endEdit() {
                var $dg = $("#grid");
                var rows = $dg.datagrid('getRows');
                for (var i = 0; i < rows.length; i++) {
                    $dg.datagrid('endEdit', i);
                }
            }
    
            function beginEdit() {
                var $dg = $("#grid");
                var rows = $dg.datagrid('getRows');
                for (var i = 0; i < rows.length; i++) {
                    $dg.datagrid('beginEdit', i);
                }
            }
    
     {
                        text: '提交',
                        iconCls: 'icon-save',
                        handler: function () {
                            endEdit();
                            if ($dg.datagrid('getChanges').length) {
                                var inserted = $dg.datagrid('getChanges', "inserted");
                                var deleted = $dg.datagrid('getChanges', "deleted");
                                var updated = $dg.datagrid('getChanges', "updated");
                                var effectRow = new Object();
                                if (inserted.length) {
                                    effectRow["inserted"] = JSON.stringify(inserted);
                                }
                                if (deleted.length) {
                                    effectRow["deleted"] = JSON.stringify(deleted);
                                }
                                if (updated.length) {
                                    effectRow["updated"] = JSON.stringify(updated);
                                }
    
                            }
                             var url = '<%:Url.Content("~/CertModule/SailorTrainC/Save") %>';
                                    $.post(url, effectRow, function (rsp) {
    
                                        //if (rsp.status) {
                                        $.messager.alert("提示", "提交成功!");
                                        $dg.datagrid('acceptChanges');
                                        beginEdit();
                                        //}
                                    }, "JSON").error(function () {
                                        $.messager.alert("提示", "提交错误!");
                                        beginEdit();
                                    });
                                }
                        
    
                    }, 
    
    //提交代码 
    

      

        public class SailorTrainCEdit
        {
            public string Id { get; set; }
         
            public int SailorTrainId { get; set; }
    
            public int SailorInfoId { get; set; }
          
            public int? TrainResultId { get; set; }
    
            public bool ObtainCert { get; set; }
    
            public int? PayMethodsId { get; set; }
    
        }     
    
    public ActionResult Save() 
            {
                var client = new CertModuleServiceReference.CertModuleServiceClient();
                //获取编辑数据 这里获取到的是json字符串
                string deleted = Request.Form["deleted"];
                string inserted = Request.Form["inserted"];
                string updated = Request.Form["updated"];
    
                if (deleted != null)
                {
    
                    //把json字符串转换成对象
    
                    List<SailorTrainCEdit> listDeleted = deleted.JsonDeserialize<List<SailorTrainCEdit>>();
    
                    foreach (var item in listDeleted)
                    {
                        if (item == null)
                        {
                            continue;
                        }
                        if (item.Id != null && item.Id != "")
                        {
                            client.DeleteSailorTrainC(DataConverter.CInt(item.Id).Value);
                        }
                    }
    
                }
    
                if (inserted != null)
                {
    
                    //把json字符串转换成对象
    
                    List<SailorTrainCEdit> listInserted = inserted.JsonDeserialize<List<SailorTrainCEdit>>();
                    foreach (var item in listInserted)
                    {
                        var sailorTrainC = new SailorTrainCListDTO();
    
                        sailorTrainC.SailorTrainId = item.SailorTrainId;
                        sailorTrainC.SailorInfoId = item.SailorInfoId;
                        sailorTrainC.ObtainCert = item.ObtainCert;
                        sailorTrainC.PayMethodsId = item.PayMethodsId;
                        sailorTrainC.TrainResultId = item.TrainResultId;
                        client.AddSailorTrainC(sailorTrainC);
    
                    }
    
    
    
                }
    
    
                if (updated != null)
                {
    
                    //把json字符串转换成对象
    
                    List<SailorTrainCEdit> listUpdated = updated.JsonDeserialize<List<SailorTrainCEdit>>();
                    foreach (var item in listUpdated)
                    {
                        var sailorTrainC = client.GetSailorTrainC(DataConverter.CInt(item.Id).Value);
                        sailorTrainC.SailorTrainId = item.SailorTrainId;
                        sailorTrainC.SailorInfoId = item.SailorInfoId;
                        sailorTrainC.ObtainCert = item.ObtainCert;
                        sailorTrainC.PayMethodsId = item.PayMethodsId;
                        sailorTrainC.TrainResultId = item.TrainResultId;
                        client.UpdateSailorTrainC(sailorTrainC);
                    }
                }
                return Json(new { IsSuccess = true, Message = "保存成功" }, "text/html", JsonRequestBehavior.AllowGet);
    
            }
    
    //后台代码
    

      

      小弟新手 如有错误 请指点出来 留下您宝贵意见!

  • 相关阅读:
    软件设计师考试知识点总结
    HTML和CSS
    JavaScript核心知识点
    操作系统--页面置换算法(缺页数计算)
    中标麒麟系统远程桌面连接
    数据结构 图
    数据结构 二叉树
    MATLAB 大数据剔除坏值
    PTA 邻接表存储图的广度优先遍历(20 分)
    PTA 邻接矩阵存储图的深度优先遍历
  • 原文地址:https://www.cnblogs.com/yhyjy/p/2999527.html
Copyright © 2020-2023  润新知