Extjs 控制grid、editorgrid动态添加、删除行
来源:互联网 发布:stm32串口编程 编辑:程序博客网 时间:2024/06/01 09:59
1.对Grid进行删除function() { var _grid = Ext.getCmp("id_of_grid"); var content = _grid.getSelectionModel().getSelected(); //取得选择的那一行 if (content != null) { store.remove(content); //grid的数据是store,修改store就能修改显示的数据 } else { Ext.MessageBox.alert("系统提示", "请选择要删除的数据!!!"); } if (store.getCount() <= 0) { Ext.getCmp("departmentid").enable(); }}2.对Grid进行增加, 并验证增加内容是否合法1>对Ext.GridPanel进行增加 add = function(){ var rec; var id; var gridStore = Ext.getCmp("eGrid").store;var plant = Ext.getCmp("eGrid").store.recordType; //与record.create一致 var _rs = new plant({ //增加的数据 id:6, name:'小兰', email:'xiaoxiao@easyjf.com', sex:'女', bornDate:'1993-3-7' }); var len = gridStore.getCount(); for (var i = 0; i < len; i++) { if (_rs.get("id") == gridStore.getAt(i) .get("id")) { Ext.Msg.alert("提示", "该ID已经存在,不能重复录入!"); return; } } if (_rs.get("id") > 100 || _rs.get("id") < 1) { Ext.Msg.alert("提示", "ID错误"); return; } Ext.getCmp("eGrid").store.add(_rs); //往store里添加一项}
2>对Ext.EditorGridPanel进行增加 listeners :{ validateedit : check //注意:不是afteredit }check = function(obj){ if (obj.field =="id"){ var oldValue = obj.originalValue; var gridStore = Ext.getCmp("eGrid").store; var newValue = obj.value; var len = gridStore.getCount(); for (var i = 0; i < len; i++) { if (newValue == gridStore.getAt(i).get("id")) { Ext.Msg.alert("Message", "The ID you input is Exsiting!"); return false; } } if (newValue > 100 || newValue < 1) { Ext.Msg.alert("Message", "The ID should 1~100!"); return false; } }}