easyUI datagrid增删改查

这篇博客主要介绍了如何使用easyUI的datagrid组件进行数据的增删改查操作,包括绑定数据、配置列信息、添加编辑工具栏以及处理各种操作的方法。同时,文章还展示了如何处理分页和加载数据的逻辑,以及与后端交互进行数据保存的操作流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

$(function () {

    //绑定配件在库数据

    vareditRow = undefined;

    $("#dgMaster").datagrid({

       method: 'get',

       queryParams: queryParams,

        url:locationAddress + "/AccessoriesMaster/AccessoriesMasterList?rand="+ Math.random(),//加载的URL 

       pagination: true,//显示分页

       pageSize: 15,//分页大小

       singleSelect: true,//只允许选择单行

       pageList: [5, 10, 15, 20],//每页的个数 

        fit: false,//自动补全 

       fitColumns: true,

       checkOnSelect: true,

        selectOnCheck: true,

       onClickRow: loadSubstitute,

       iconCls: "icon-save",//图标 

       loadMsg: "正在加载,请稍等...",

       rownumbers: true,//行号

       autoRowHeight: true,//定义是否设置基于该行内容的行高度

       striped: true,//设置为 true,则把行条纹化。(即奇偶行使用不同背景色)

       columns: [[      //每个列具体内容

                   //{

                   //    field: 'op',title: '<input id=\"all\" type=\"checkbox\"style=\"display:none\" οnclick="\selectAll()\"  >',

                   //    formatter:function (value, rec, rowIndex) {

                   //        return"<input type=\"checkbox\" name=\"check\" value=\"" + rec.UserId +"\">";

                   //    },

                   //},

                   {

                        field: 'HideAdd', title: '隐藏Add', align: "center",hidden: 'true', editor: { type: 'text' }

                   },

                   {

                        field: 'HideEdit', title: '隐藏Edit', align: "center",hidden: 'true',editor: { type: 'text' }

                   },

                   {

                        field: 'PartsNo', title: '配件代码', align: "center",editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'PartsName', title: '配件名称', align:"center", editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'ASUnitPrice', title: '单价(AS站价)', align: "center",editor: { type: 'text', options: { required: true} }

                    },

                   {

                        field: 'UnitPrice', title: '成本价|成本货币', align: "center",editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'RecommendedRetailPrice', title: '建议零售价', align:"center", editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'Stock', title: '库存数量', align: "center",editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'LockedStock', title: '锁定库存', align:"center", editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'AvailableStock', title: '可用库存', align:"center", editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'Remarks', title: '备注', align: "center",editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'PurchaseSource', title: '进货来源', align:"center", editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'Classification', title: '类别', align:"center", editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'Discontinued', title: '已停产', align:"center", editor: { type: 'text', options: { required: true} }

                   },

                   {

                        field: 'Product', title: '通用产品', align: "center",editor: { type: 'text', options: { required: true} }

                   },

                    {

                         field: 'DeleteFlg', title: '削除', align:"center", formatter: deleteFlgValue, editor:{ type: 'combobox', options: { data: deleteFlgs,valueField: "value",textField: "text", panelHeight: 'auto' } }

                    },

                   {

                        field: 'id', title: '操作', align: "center",

                        formatter: function(value, row, index) {

                            //varhtml = "<a href='javascript:void(0)' οnclick=\"editMaster('"+ row.PartsNo + "','" + row.PartsName + "'," +row.ASUnitPrice + "," + row.UnitPrice + "," +row.RecommendedRetailPrice + "," + row.Stock + "," +row.LockedStock + "," + row.AvailableStock + ",'" +row.Remarks + "','" + row.Substitute + "','" +row.Classification + "','" + row.PurchaseSource + "'," +row.Discontinued + ",'" + row.Product + "'," +row.DeleteFlg + ")\">修改</a>&nbsp;&nbsp;&nbsp;";

                            varhtml = "<a href='javascript:void(0)' id='delMaster' οnclick=\"delMaster('"+ row.PartsNo + "')\">删除</a>";

                            returnhtml;

                        }

                   }

        ]],

       toolbar: [{

           text: '添加', iconCls: 'icon-add',handler: function () {

               if (editRow != undefined) {

                   $("#dgMaster").datagrid('endEdit', editRow);

               }

               if (editRow == undefined) {

                   $("#dgMaster").datagrid('insertRow', {

                        index: 0,

                        row: {}

                   });

                   $("#dgMaster").datagrid('beginEdit', 0);

                   var cellEdit = $('#dgMaster').datagrid('getEditor',{ index: 0, field: 'HideAdd' });

                   var $input = cellEdit.target; //得到文本框对象

                   $input.val("1"); //设值

                   editRow = 0;

               }

            }

        },'-', {

           text: '保存', iconCls: 'icon-save',handler: function () {

               $("#dgMaster").datagrid('endEdit', editRow);

 

               //如果调用acceptChanges(),使用getChanges()则获取不到编辑和新增的数据。

 

               //使用JSON序列化datarow对象,发送到后台。

               var rows = $("#dgMaster").datagrid('getChanges');

 

               var rowstr = JSON.stringify(rows);//json转化为字符串

               $.ajax({

                   type: "POST",

                   url: "/AccessoriesMaster/IsAddEdit",

                   dataType: "json",

                   data: rowstr,

                   contentType: "application/json; charset=utf-8",

                   success: function (rowstr) {

                        $.messager.alert("操作提示", "操作成功!");

                   }

               });

            }

        },

        //'-',{

        //    text: '删除',iconCls: 'icon-remove', handler: function () {

        //       $("#PeijianDG").datagrid('endEdit', editRow);

        //        var row =$("#PeijianDG").datagrid('getChecked');

        //        var rowstr = JSON.stringify(row);

        //        $.each(row, function (index, item) {

        //            var num =$("#PeijianDG").datagrid('getRowIndex', item);

        //           $("#PeijianDG").datagrid('deleteRow', num);

        //        });

               

        //    }

        //},

        '-', {

           text: '修改', iconCls: 'icon-edit',handler: function () {

               var row = $("#dgMaster").datagrid('getSelected');

               if (row !=null){

                   if (editRow != undefined) {

                        $("#dgMaster").datagrid('endEdit',editRow);

                   }

 

                   if (editRow == undefined) {

                        varindex = $("#dgMaster").datagrid('getRowIndex', row);

                        $("#dgMaster").datagrid('beginEdit',index);

                        editRow = index;

                        $("#dgMaster").datagrid('unselectAll');

                        varcellEdit = $('#dgMaster').datagrid('getEditor',{ index: index, field: 'HideEdit' });

                        var$input = cellEdit.target; // 得到文本框对象

                        $input.val("2"); // 设值

                   }

               } else {

                    

               }

            }

        }

        ],

        //onAfterEdit:function (rowIndex, rowData, changes) {

        //    editRow = undefined;

        //},

        //onDblClickRow:function (rowIndex, rowData) {

        //    if (editRow != undefined) {

        //       $("#dgMaster").datagrid('endEdit', editRow);

        //    }

 

        //    if (editRow == undefined) {

        //       $("#dgMaster").datagrid('beginEdit', rowIndex);

        //        editRow = rowIndex;

        //    }

        //},

       loadFilter: function (data) {

            returndata;

        }

    });

 

    varqueryParams = $('#dgMaster').datagrid('options').queryParams;

    //设置分页控件     

 

    varp = $('#dgMaster').datagrid('getPager');

 

   $(p).pagination({

 

       beforePageText: '',//页数文本框前显示的汉字         

 

       afterPageText: '    {pages} ',

 

        displayMsg: '当前显示 {from} - {to} 条记录   {total} 条记录',

    });

 

    //查询按钮

    $("#selectMaster").click(function() {

       queryParams["PartsNo"] = $('#partsNo').val();

       queryParams["PartsName"] = $("#partsName").combobox('getText');

        $('#dgMaster').datagrid('options').queryParams= queryParams;

        $('#dgMaster').datagrid("reload");

    });

 

    //添加弹窗初始关闭

    $('#addSubstituteDialog').dialog('close');

 

 

    //加载替代品

    $("#dgMasterSubstitute").datagrid({

       method: 'get',

       queryParams: queryParams,

        //url:locationAddress + "/AccessoriesMaster/selectSubstitute",//加载的URL 

       pagination: true,//显示分页

       pageSize: 15,//分页大小

       singleSelect: true,//只允许选择单行

       pageList: [5, 10, 15, 20],//每页的个数 

        fit: false,//自动补全 

       fitColumns: true,

       iconCls: "icon-save",//图标 

       loadMsg: "正在加载,请稍等...",

       rownumbers: true,//行号

       autoRowHeight: true,//定义是否设置基于该行内容的行高度

       striped: true,//设置为 true,则把行条纹化。(即奇偶行使用不同背景色)

       columns: [[      //每个列具体内容

                   {

                        field: 'PartsNo', title: '配件代码', align: "center",editor: { type: 'text' }

                   },

                   {

                        field: 'PartsName', title: '配件名称', align:"center", editor: { type: 'text' }

                   },

                   {

                        field: 'ASUnitPrice', title: '单价(AS站价)', align: "center",editor: { type: 'text' }

                   },

                   {

                        field: 'UnitPrice', title: '成本价|成本货币', align: "center",editor: { type: 'text' }

                   },

                   {

                        field: 'RecommendedRetailPrice', title: '建议零售价', align:"center", editor: { type: 'text' }

                   },

                   {

                        field: 'Stock', title: '库存数量', align: "center",editor: { type: 'text' }

                   },

                   {

                        field: 'LockedStock', title: '锁定库存', align:"center", editor: { type: 'text' }

                   },

                   {

                        field: 'AvailableStock', title: '可用库存', align:"center", editor: { type: 'text' }

                   },

                   {

                       field: 'Remarks', title: '备注', align: "center",editor: { type: 'text' }

                   },

                   {

                        field: 'PurchaseSource', title: '进货来源', align:"center", editor: { type: 'text' }

                   },

                    {

                        field: 'Classification', title: '类别', align:"center", editor: { type: 'text' }

                   },

                   {

                        field: 'Discontinued', title: '已停产', align:"center", editor: { type: 'text' }

                   },

                   {

                        field: 'Product', title: '通用产品', align: "center",editor: { type: 'text' }

                   },

                   {

                        field: 'id', title: '操作', align: "center",

                   }

        ]],

       toolbar: [{

           text: '添加', iconCls: 'icon-add',handler: function () {

               var rowInfo = $("#dgMaster").datagrid('getSelected');

               if (rowInfo != null){

                   tankuang();

 

                   $('#addSubstituteDialog').dialog({

                        title: '增加替代品信息',

                        width: 1150,

                        height: 560,

                        closed: false,

                        cache: false,

                        modal: true,

                        buttons: [{

                            text: '确认添加',

                            handler: function() {

                                varrow = $("#dgMasterSubstituteA").datagrid("getRows");

                                varrowMaster = $("#dgMaster").datagrid("getSelected");

                                for(vari = 0; i < row.length; i++) {

                                    $('#dgMasterSubstitute').datagrid('appendRow',row[i]);

                                }

                                varrowstr = JSON.stringify(row);

                                $.ajax({

                                    type: "POST",

                                    url: "/AccessoriesMaster/JsonSubstitute?Substitute="+ rowMaster.PartsNo,

                                    dataType: "json",

                                    data:rowstr,

                                   contentType: "application/json; charset=utf-8",

                                    success: function(rowstr) {

                                       $.messager.alert("操作提示", "操作成功!");

                                    }

                                });

                                $('#addSubstituteDialog').dialog('close');

                            }

                        }, {

                            text: '关闭',

                            handler: function() { $('#addSubstituteDialog').dialog('close'); }

                        }]

                   });

               }else

                   $.messager.alert("操作提示", "请选择配件Master来添加替代品!");

            }

        }],

       loadFilter: function (data) {

            returndata;

        }

    });

    varqueryParams = $('#dgMasterSubstitute').datagrid('options').queryParams;

    //设置分页控件     

 

    varp = $('#dgMasterSubstitute').datagrid('getPager');

 

   $(p).pagination({

 

       beforePageText: '',//页数文本框前显示的汉字         

 

       afterPageText: '    {pages} ',

 

       displayMsg: '当前显示 {from} - {to} 条记录   {total} 条记录',

    });

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值