getValues 和 getFieldValues

Ext.form.BasicForm

getValues()和getFieldValues()辨析

环境:Extjs3.3

 

getValues————Returns the fields in this form as an object with key/value pairs as they would be submitted using a standard form submit. 

 

getFieldValues————Retrieves the fields in the form as a set of key/value pairs, using the getValue() method.

 

示例:

   若表单中存在combo表单项,displayField和valueField是不同值。

   用getValues得到的是displayValue

   用getFieldValues得到的是valueField

注意:

1、getFieldValues(true)标示只得到脏数据(变动过的数据)

2、getFieldValues不会得到处于disable状态的表单项值。

若需要disable状态的表单项值可以做如下修改:

Ext.override(

Ext.form.BasicForm,

{

getFieldValues : function(dirtyOnly){

       var o = {},

           n,

           key,

           val;

       this.items.each(function(f) {

           if (dirtyOnly !== true || f.isDirty()) {

               n = f.getName();

               key = o[n];

               val = f.getValue();

               if(Ext.isDefined(key)){

                   if(Ext.isArray(key)){

                       o[n].push(val);

                   }else{

                       o[n] = [key, val];

                   }

               }else{

                   o[n] = val;

               }

           }

       });

       return o;

     }

}

)


你可能感兴趣的:(ext,F#)