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

  

 { field: \'TrainResultId\', title: \'培训结果\', width: 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);

        }

//后台代码

  

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

分类:

技术点:

相关文章: