-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The source code</title>
- <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />
- <script type="text/javascript" src="../resources/prettify/prettify.js"></script>
-</head>
-<body onload="prettyPrint();">
- <pre class="prettyprint lang-js">/*!
- * Ext JS Library 3.2.2
- * Copyright(c) 2006-2010 Ext JS, Inc.
- * licensing@extjs.com
- * http://www.extjs.com/license
- */
-<div id="cls-Ext.form.Hidden"></div>/**
- * @class Ext.form.Hidden
- * @extends Ext.form.Field
- * A basic hidden field for storing hidden values in forms that need to be passed in the form submit.
+<!DOCTYPE html><html><head><title>Sencha Documentation Project</title><link rel="stylesheet" href="../reset.css" type="text/css"><link rel="stylesheet" href="../prettify.css" type="text/css"><link rel="stylesheet" href="../prettify_sa.css" type="text/css"><script type="text/javascript" src="../prettify.js"></script></head><body onload="prettyPrint()"><pre class="prettyprint"><pre><span id='Ext-form.field.Hidden-method-constructor'><span id='Ext-form.field.Hidden'>/**
+</span></span> * @class Ext.form.field.Hidden
+ * @extends Ext.form.field.Base
+ * <p>A basic hidden field for storing hidden values in forms that need to be passed in the form submit.</p>
+ * <p>This creates an actual input element with type="submit" in the DOM. While its label is
+ * {@link #hideLabel not rendered} by default, it is still a real component and may be sized according to
+ * its owner container's layout.</p>
+ * <p>Because of this, in most cases it is more convenient and less problematic to simply
+ * {@link Ext.form.action.Action#params pass hidden parameters} directly when
+ * {@link Ext.form.Basic#submit submitting the form}.</p>
+ * <p>Example:</p>
+ * <pre><code>new Ext.form.Panel({
+ title: 'My Form',
+ items: [{
+ xtype: 'textfield',
+ fieldLabel: 'Text Field',
+ name: 'text_field',
+ value: 'value from text field'
+ }, {
+ xtype: 'hiddenfield',
+ name: 'hidden_field_1',
+ value: 'value from hidden field'
+ }],
+
+ buttons: [{
+ text: 'Submit',
+ handler: function() {
+ this.up('form').getForm().submit({
+ params: {
+ hidden_field_2: 'value from submit call'
+ }
+ });
+ }
+ }]
+});</code></pre>
+ * <p>Submitting the above form will result in three values sent to the server:
+ * <code>text_field=value+from+text+field&hidden_field_1=value+from+hidden+field&<br>hidden_field_2=value+from+submit+call</code></p>
+ *
* @constructor
* Create a new Hidden field.
* @param {Object} config Configuration options
- * @xtype hidden
+ *
+ * @xtype hiddenfield
*/
-Ext.form.Hidden = Ext.extend(Ext.form.Field, {
- // private
- inputType : 'hidden',
+Ext.define('Ext.form.field.Hidden', {
+ extend:'Ext.form.field.Base',
+ alias: ['widget.hiddenfield', 'widget.hidden'],
+ alternateClassName: 'Ext.form.Hidden',
// private
- onRender : function(){
- Ext.form.Hidden.superclass.onRender.apply(this, arguments);
- },
-
- // private
- initEvents : function(){
- this.originalValue = this.getValue();
+ inputType : 'hidden',
+ hideLabel: true,
+
+ initComponent: function(){
+ this.formItemCls += '-hidden';
+ this.callParent();
},
// These are all private overrides
+ initEvents: Ext.emptyFn,
setSize : Ext.emptyFn,
setWidth : Ext.emptyFn,
setHeight : Ext.emptyFn,
markInvalid : Ext.emptyFn,
clearInvalid : Ext.emptyFn
});
-Ext.reg('hidden', Ext.form.Hidden);</pre>
-</body>
-</html>
\ No newline at end of file
+</pre></pre></body></html>
\ No newline at end of file