zoukankan      html  css  js  c++  java
  • getValues() 还是 getFieldValues() [转]

    http://www.java123.net/436578.html

    ExtJS 中,下列两个方法有差别 formPanel.getForm().getValues()和formPanel.getForm().getFieldValues()

    1.对于下拉控件 ComboBox前者可能拿不到下拉框的value内容,而只是拿到它显示的内容后者则拿到value的内容。

    2.对于DateField前者同样是拿到显示的内容,后者则是完整的datetime, 如 Tue Jun 18 2013 00:00:00 GMT+0800 (中国标准时间Ext.urlEncode后,显示为这样的内容 2013-06-18T00:00:00 

    其实这些从他们的源代码就能看出来。内容如下:/** *

    Returns the fields in this form as an object with key/value pairs as they would be submitted using a standard form submit. * If multiple fields exist with the same name they are returned as an array.

    *

    Note: The values are collected from all enabled HTML input elements within the form, not from * the Ext Field objects. This means that all returned values are Strings (or Arrays of Strings) and that the * value can potentially be the emptyText of a field.

    * @param {Boolean} asString (optional) Pass true to return the values as a string. (defaults to false, returning an Object) * @return {String/Object} */

    getValues : function(asString){ 
                var fs = Ext.lib.Ajax.serializeForm(this.el.dom);       
                if(asString === true){ return fs; }       
                return Ext.urlDecode(fs);  
               },

    /** * Retrieves the fields in the form as a set of key/value pairs, using the {@link Ext.form.Field#getValue getValue()} method. * If multiple fields exist with the same name they are returned as an array. * @param {Boolean} dirtyOnly (optional) True to return only fields that are dirty. * @return {Object} The values in the form */

     getFieldValues : function(dirtyOnly){ 
                            var o = {},  n, key, val;
                            this.items.each(function(f) { 
                               if (!f.disabled && (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;    
                     },
    
  • 相关阅读:
    Android学习网站(1)
    selenium借助AutoIt识别上传(下载)详解
    Apache部署django项目
    win7 64 安装mysql-python:_mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory
    前端技术Bootstrap的hello world
    djngo快速实现--使用Bootstrap
    自动化基础普及之selenium是啥?
    Robot Framework自动化测试(四)--- 分层思想
    Robot Framework自动化测试(三)---Selenium API
    Robot Framework自动化测试(二)---元素定位
  • 原文地址:https://www.cnblogs.com/givemeanorange/p/5500298.html
Copyright © 2011-2022 走看看