function _cacheFields() {
    var nonInputTypes = [ 'file', 'reset', 'submit', 'button' ];
    var cachedFields = {};
    var fields = ( _formElement || {} ).elements;
    for ( var f = 0; f < fields.length; f++ ) {
      var field = fields[f];
      if ( field.name && !field.disabled && nonInputTypes.indexOf( field.type ) === -1 ) {
        if ( field.type === 'radio' || field.type === 'checkbox' ) {
          cachedFields[field.name] = cachedFields[field.name] || [];
          cachedFields[field.name].push( field );
        } else {
          cachedFields[field.name] = field;
        }
      }
    }
    return cachedFields;
  }
/**
   * @returns {obj} form fields, keyed by name.
   *   Checkboxes and radio fields are stored in array.
   */
@returns {obj} form fields, keyed by name.
Checkboxes and radio fields are stored in array.
@returns { obj } form fields keyed by name . Checkboxes and radio fields are stored in array .
function _cacheFields() {
    var nonInputTypes = [ 'file', 'reset', 'submit', 'button' ];
    var cachedFields = {};
    var fields = ( _formElement || {} ).elements;
    for ( var f = 0; f < fields.length; f++ ) {
      var field = fields[f];
      if ( field.name && !field.disabled && nonInputTypes.indexOf( field.type ) === -1 ) {
        if ( field.type === 'radio' || field.type === 'checkbox' ) {
          cachedFields[field.name] = cachedFields[field.name] || [];
          cachedFields[field.name].push( field );
        } else {
          cachedFields[field.name] = field;
        }
      }
    }
    return cachedFields;
  }
function _cacheFields ( ) { var nonInputTypes = [ 'file' , 'reset' , 'submit' , 'button' ] ; var cachedFields = { } ; var fields = ( _formElement || { } ) . elements ; for ( var f = 0 ; f < fields . length ; f ++ ) { var field = fields [ f ] ; if ( field . name && ! field . disabled && nonInputTypes . indexOf ( field . type ) === - 1 ) { if ( field . type === 'radio' || field . type === 'checkbox' ) { cachedFields [ field . name ] = cachedFields [ field . name ] || [ ] ; cachedFields [ field . name ] . push ( field ) ; } else { cachedFields [ field . name ] = field ; } } } return cachedFields ; }
@returns {obj} form fields, keyed by name.
@returns { obj } form fields keyed by name .