Extjs4中用到RESTful风格表格问题(update/保存按钮变灰无法使用)
来源:互联网 发布:域名续费越来越贵 编辑:程序博客网 时间:2024/06/07 02:32
在rowEditing定义中,listeners下添加edit监听事件,点击保存可以进行相应操作
var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', {
saveBtnText: '保存',cancelBtnText: '取消',
//errorsText: '错误信息',
//dirtyText: '已修改,你需要提交或取消变更',
clicksToEdit: 2,//点击2次进行修改
autoCancel: false,
errorSummary: false, //把自带的验证隐藏
listeners: {
edit:function(rowEditing,context) {//点击保存
Ext.Ajax.request({
url : sysPath + '/storeAccount/addOrUpdateAccount',
params:context.record.data,//需要保存的内容
method:'POST',
success: function(action){
Ext.Msg.alert('友情提示','保存成功');
accountChildStore.load();
},
failure: function(action){
Ext.Msg.alert('友情提示','保存失败');
}
});
},
cancelEdit: function(rowEditing, context) {//点击取消
if (context.record.phantom) {
accountChildStore.remove(context.record);
}
}
}
});
我们在grid.Panel中难免会有部分内容是有要求的,例如不为空
{
text : '真实姓名',
sortable : true,
width : 80,
dataIndex : 'userName',
field: {
xtype: 'textfield',
allowBlank : false
}
}
在上面的userName内容不为空,直接加上allowBlank : false的话,你会发现update(保存)按钮变为灰色无法操作,就算你填写了内容,依然灰色
此时只需要加上如下代码可解决:
//新增时校验通过显示保存按钮
Ext.override(Ext.grid.RowEditor,
{
addFieldsForColumn : function(column, initial) {
var me = this, i, length, field;
if (Ext.isArray(column)) {
for (i = 0, length = column.length; i < length; i++) {
me.addFieldsForColumn(column[i], initial);
}
return;
}
if (column.getEditor) {
field = column.getEditor(null, {
xtype : 'displayfield',
getModelData : function() {
return null;
}
});
if (column.align === 'right') {
field.fieldStyle = 'text-align:right';
}
if (column.xtype === 'actioncolumn') {
field.fieldCls += ' ' + Ext.baseCSSPrefix
+ 'form-action-col-field';
}
if (me.isVisible() && me.context) {
if (field.is('displayfield')) {
me.renderColumnData(field, me.context.record,
column);
} else {
field.suspendEvents();
field.setValue(me.context.record
.get(column.dataIndex));
field.resumeEvents();
}
}
if (column.hidden) {
me.onColumnHide(column);
} else if (column.rendered && !initial) {
me.onColumnShow(column);
}
// -- start edit
me.mon(field, 'change', me.onFieldChange, me);
// -- end edit
}
}
});
- Extjs4中用到RESTful风格表格问题(update/保存按钮变灰无法使用)
- C#禁用关闭按钮(变灰)
- 禁用CMFCRibbonBar的按钮(变灰)
- 让按钮变灰
- cocos按钮变灰
- 表单提交时,用户不接受(不同意)协议时让提交按钮变灰无法选中
- flash 游戏设计笔记:把一个按钮或者Sprite变灰(filters使用)
- 按钮变灰的例子
- js 按钮变灰代码
- vc2003/2005下,菜单始终无法变灰的问题
- 解决vs2013转到定义变灰,F12无法跳转问题
- 解决MacLook变灰问题
- MFC中使菜单栏按钮变灰
- cocos2dx 3.2 图片以及按钮变灰
- 点击一个按钮后,使按钮变灰(不可能点)
- button按钮防重复提交(点击提交之后提交按钮变灰)
- Thunderbird发送后备份到已发送卡住及“附加”按钮变灰的问题
- 下拉菜单失效变灰的问题(收)
- 关于mysql复合索引
- java实现截取网页中所包含的网址
- SQL Server 死锁
- CSS3 filter(滤镜)
- HashSet源码解析
- Extjs4中用到RESTful风格表格问题(update/保存按钮变灰无法使用)
- MAC下显示隐藏文件夹
- CubeMX+KEIL+stm32 c8t6驱动正交编码器显示在OLED1306上
- IMSI.Design.TurboCAD.Designer.v14-ISO 1CD(多功能的2D/3D图形设计软件)
- angularJs-论模块化写法的两种方式
- 翻页功能和查询功能测试用例设计
- tensorflow实现自编码器
- cookie 与 session的区别
- 安装MySQL5.7.18遇到的坑