`

Extjs Ext.grid.plugin.RowEditing add insert saveBtn disabled

阅读更多
比较赶时髦,用了Extjs4.2,今天遇到一个问题,搞了好久。终于找到原因,用RowEditing编辑
新增girdPanel的行时,遇到保存按钮变灰的情况,添加了值,写上值,也无效。在官网的帖子
中找到如下代码,重写RowEditor即可。把下面代码复制到你的代码中,可以解决该问题。

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
         }
   }
});
1
0
分享到:
评论

相关推荐

    ExtJS 4.0 改善Ext.grid.plugin.RowEditing (重构,v1.4版本,2011-09-11)

    这篇文章的标题指出这是一个关于“Ext.grid.plugin.RowEditing”的重构,版本为v1.4,发布日期为2011年9月11日。重构通常意味着代码的改进,可能涉及性能优化、错误修复或功能增强。在4.0版本中,RowEditing插件的...

    extjs4.1-ux.rar

    6、Ext.ux.grid.plugin.RowEditing 7、Ext.ux.grid.plugin.DragSelector 8、Ext.ux.grid.plugin.SortMenu 9、Ext.ux.grid.plugin.MultipleSort 10、Ext.ux.window.EachDialog 11、Ext.ux.grid.property.Grid 12、Ext...

    ExtJs选中var editor = new Ext.ux.grid.RowEditor详解

    ### ExtJs选中 `var editor = new Ext.ux.grid.RowEditor` 详解 在Web开发领域,特别是使用ExtJs框架进行复杂用户界面构建时,`RowEditor` 是一个非常实用的功能,它允许用户直接在表格行内编辑数据,极大地提高了...

    Ext.grid.GridPanel属性祥解

    `Ext.grid.GridPanel`是ExtJS中用于展示表格数据的核心组件之一。它提供了丰富的配置选项和方法来帮助开发者灵活地控制表格的表现形式及功能。对于初学者或者希望深入理解`GridPanel`特性的Web开发人员来说,掌握其...

    extjs中Ext.Panel和TreePanel 组件动态加载本地页面数据

    在EXTJS这个强大的JavaScript框架中,`Ext.Panel`和`TreePanel`是两个非常重要的组件,它们被广泛用于构建复杂的用户界面。这篇文章将探讨如何在这些组件中动态加载本地页面数据,以提升用户体验并实现灵活的数据...

    extjs-Ext.ux.form.LovCombo下拉框

    在EXTJS框架中,`Ext.ux.form.LovCombo`是一种自定义组件,它扩展了基本的`Ext.form.field.ComboBox`,提供了更丰富的功能,尤其是针对多选和联动选择的需求。这个组件通常用于创建具有“lov”(即“Look Up Value”...

    Extjs4.X下comboboxTree下拉树型菜单,完美支持多选、单选,绝对好用

    在ExtJS 4.x框架中,ComboboxTree是一种特殊的组件,它将传统的下拉框与树形结构结合在一起,提供了一种更为灵活的用户输入方式。这种组件在数据选择上非常实用,尤其当数据层级关系复杂时,可以方便地进行多选或...

    EXTJS3 Ext.PagingToolbar() 快捷键应用

    在EXTJS3中,`Ext.PagingToolbar()` 是一个非常重要的组件,用于在大量数据的网格或视图中实现分页功能。这个组件允许用户轻松地浏览和操作大量的记录,而不需要一次性加载所有数据,从而提高了应用程序的性能和用户...

    Ext grid panel 滚动条位置不变

    ### Ext grid panel 滚动条位置不变 在前端开发领域,特别是在使用Ext JS框架时,保持滚动条位置不变是一个非常实用的功能。特别是在处理实时数据更新的场景下,这一功能可以确保用户在数据刷新后仍然停留在之前...

    关于extjs ext.tree

    在本篇中,我们将深入探讨ExtJS中的`ext.tree`,这是一种强大的树形组件,用于展示层次结构的数据。 `ext.tree` 是ExtJS中的TreePanel,它允许开发者创建可交互的树形结构,通常用于展示文件系统、组织架构或层级...

    ExtJS Ext.MessageBox.alert&#40;&#41;弹出对话框详解

    代码如下: Ext.onReady(function() { Ext.Msg.alert&#40;‘提示’, ‘逗号分隔参数列表’&#41;; //这种方式非常常见的 }); 效果图: 代码如下: Ext.onReady(function() { //定义 JSON(配置对象) var config = { ...

    Extjs3.x入门学习

    ExtJS 是一个强大的JavaScript库,主要用于构建富客户端的Web应用程序。在3.x版本中,它提供了丰富的用户界面组件和强大的数据绑定机制。本篇将基于"Extjs3.x入门学习"这一主题,深入探讨相关知识点。 1. **EXT_JS...

    Ext.Ajax.request2.x实现同步请求

    在EXTJS库中,`Ext.Ajax.request`是用于发送Ajax请求的核心方法,它支持异步和同步操作。本文将详细解析如何利用`Ext.Ajax.request`实现同步请求,并探讨其背后的原理和注意事项。 首先,我们需要理解Ajax的本质,...

    ExtJs的Ext.Ajax.request实现waitMsg等待提示效果

    ExtJs提供了Ext.Ajax.request方法来进行Ajax请求,但默认情况下,该方法不支持waitMsg属性,不像fp.form.submit方法提供了waitTitle和waitMsg属性来实现等待提示。为了解决这一限制,我们可以采用Ext.MessageBox的...

    Extjs Grid 扩展实例

    2. **行编辑**:为了实现增删改查的功能,我们可以集成ExtJS的行编辑插件(`Ext.grid.plugin.RowEditing`)。这允许用户直接在Grid的行内进行编辑,通过点击单元格激活编辑模式,完成后点击保存按钮提交更改。 3. *...

    ExtJS 多文件上传 UploadDialog For ExtJS3.x

    ### ExtJS 多文件上传 UploadDialog For ExtJS3.x #### 概述 在Web开发领域,特别是使用ExtJS框架进行界面设计时,文件上传功能是必不可少的一部分。然而,随着ExtJS版本的更新,原有的多文件上传组件可能不再兼容...

    Ext.ux.touch.grid-master.rar

    EXTJS Touch 提供了一套完整的UI组件,包括表格、按钮、滑块、选择器等,而Ext.ux.touch.grid-master则是EXTJS Touch中的一个增强型表格组件。这个扩展提供了更丰富的功能,使得在移动设备上处理和展示大量结构化...

    extjs3.x 官方示例以及chm版api

    1. **组件体系**:ExtJS 3.x 提供了一个组件化的UI框架,包括各种基础和复杂组件如表格(Grid)、面板(Panel)、窗口(Window)、按钮(Button)等。这些组件可以灵活组合,创建出功能丰富的用户界面。 2. **数据...

    extjs4.x tabpanel 动态加载panel和html例子

    this.add(panel).show(); // 添加并显示面板 this.setActiveTab(panel); // 设置当前活动的tab } ``` 3. **创建并添加panel** 当用户触发某个事件(如点击按钮)时,调用上面定义的`loadTab`函数,传入包含`...

Global site tag (gtag.js) - Google Analytics