extjs form isvalid的bug

版本:ext4.2.1

问题:

在Form中嵌套girdEditor,只要编辑过grid,那么Form的isDirty()永远是ture。

Form代码:

Ext.define("Soims.view.application.SampleInfoForm", {
    extend: ‘Ext.form.Panel‘,
    alias: ‘widget.sampleinfoform‘,
    title: ‘样品信息‘,
    initComponent: function () {
        this.items = [{
            xtype: ‘fieldset‘,
            layout: ‘column‘,
            items: [{
                // ... 省略
            }]
            }]
        }, {
            xtype: ‘fieldset‘,
            collapsible: false,
            frame: true,
            items: [{
                xtype: ‘anlysetestprojectgrid‘ // Form下嵌套grid
            }]
        }, {
            xtype: ‘hiddenfield‘,
            name: ‘id‘
        }];

        this.callParent(arguments);
    }
});

Grid代码:

Ext.define("Soims.view.application.AnlyseTestProjectGrid", {
    extend: ‘Ext.grid.Panel‘,
    alias: ‘widget.anlysetestprojectgrid‘,
    plugins: [Ext.create(‘Ext.grid.plugin.CellEditing‘, { clicksToEdit: 1 })],
    closable: false,
    initComponent: function () {
        this.columns = [
            {
                header: ‘拟提交测试数据‘,
                dataIndex: ‘intendCommitTestData‘,
                flex: 1,
                editor: { // 重点
                    allowBlank: false
                }
            }];

        this.callParent();
    }
});

这是ext4.2.1的一个bug

具体见http://www.sencha.com/forum/archive/index.php/t-279876.html?s=8633abd6266531666ee4c2be06a16f1a

extjs form isvalid的bug,布布扣,bubuko.com

时间: 2024-10-10 06:05:27

extjs form isvalid的bug的相关文章

2014年12月20日00:33:14-遮罩+进度条-extjs form.isvalid

1.Extjs : 遮罩+进度条 2.Extjs: extjs form.isvalid http://stackoverflow.com/questions/19354433/extjs-form-isvalid-is-false-but-how-to-know-why-the-form-is-invalid EXT API: http://docs.sencha.com/extjs/3.4.0/ http://dev.sencha.com/deploy/ext-3.x/docs/ http:

ExtJS form表单常用元素操作

Ext.onReady(function() {Ext.apply(Ext.form.VTypes, {dateRange : function(val, field) {var beginDate = null;var endDate = null;if (field.dateRange) {var beginId = field.dateRange.begin;this.beginField = Ext.getCmp(beginId);var endId = field.dateRange.

Extjs Form用法详解(适用于Extjs5)

Extjs Form是一个比较常用的控件,主要用来显示和编辑数据的,今天这篇文章将介绍Extjs Form控件的详细用法,包括创建Form.添加子项.加载和更新数据.验证等. 本文的示例代码适用于Extjs 4.x和Extjs 5.x,在Extjs 4.2.1 和Extjs 5.0.1中亲测可用! 本文由齐飞([email protected])原创,并发布在http://www.qeefee.com/article/extjs-form-in-detail,转载请注明出处!推荐更多Extjs教

Extjs Form用法详解

Extjs Form是一个比较常用的控件,主要用来显示和编辑数据的,今天这篇文章将介绍Extjs Form控件的详细用法,包括创建Form.添加子项.加载和更新数据.验证等. 本文的示例代码适用于Extjs 4.x和Extjs 5.x,在Extjs 4.2.1 和Extjs 5.0.1中亲测可用! 本文由齐飞([email protected])原创,并发布在http://www.qeefee.com/article/extjs-form-in-detail,转载请注明出处!推荐更多Extjs教

extjs form textfield的隐藏方法

只需将textfield的hidden和hideLabel配置为true就可以了.只设置hidden:true时会显示出来一个:的标签. this.formpanel = new Ext.FormPanel({ items: [{ fieldLabel: '代码', name: 'FCode', anchor:'100%', id: 'fid' },{ fieldLabel: '名称', name: 'FName', anchor:'100%' // anchor width by percen

Extjs form 表单的 submit

说明:extjs form表单的提交方式是多种多样的,本文只是介绍其中的一种方法,本文介绍的方法可能不是完美的,但是对于一般的应用应该是没有问题的.     本文包括的主要内容有:form面板设计.form字段值的获取.后台处理代码以及返回数据的获取 1.form表单设计 var panelItem = Ext.create('Ext.form.Panel', { border: false, id:'formMain', layout: 'form', items: [ { xtype: 'f

ExtJS(7)- Form技巧

一.基础的Form表单 首先Form是一个容器,可用于存放展示各种组件,form中提供了对form中组件的校验,与数据获取等方法来方便form操作. 二.Form的布局 layout: {     type: 'table',     columns: 2 } form中推荐一般用table的方式来布局 三.Form的验证与提交 form提交以前都要经过验证, if(me.form.isValid()){     var obj = me.form.getFieldValues();     /

ExtJS笔记 Form

A Form Panel is nothing more than a basic Panel with form handling abilities added. Form Panels can be used throughout an Ext application wherever there is a need to collect data from the user. In addition, Form Panels can use any Container Layout, p

[extjs] ExtJs4.2 Form 表单提交

基本代码: <script> Ext.onReady(function(){ Ext.create('Ext.form.Panel', { title: '登录', bodyPadding: 5, width: 350, // 将会通过 AJAX 请求提交到此URL url: '${pageContext.request.contextPath}/back/login.do', // 表单域 Fields 将被竖直排列, 占满整个宽度 frame: true, layout:'auto', /