/** * 一个表单的基础配置应该包含表单标题、宽度、高度,分别使用title、width、height选项进行配置。bodyStyle * 为正文区域样式。frame为true可以得到一个更加漂亮的效果 * hideLabel可以将提示信息隐藏,labelAlign指定提示信息的对齐方式。 * allowBlank选项表示是否允许为空,如果为false,表示为必填项 * 在示例中,使用两种不同的风格定义用户名和密码两个文本框,用户名使用new关键字创建;密码框使用了json对象 * 但多定义了一个选项xtype,该值是组件的另外一个名字的字符串表示,如xtype="textfield"表示文本框 * xtype="form"表示表单。xtype的值通常由类似于Ext.reg('form',Ext.FormPanel);的代码来注册,并统一使用小写表示 * * 要得到表单的值,首先要得到表单域对象,FormPanel类定义了一个getForm()方法,返回BasicForm对象,该对象 * 是表单面板关联的表单对象,BasicForm类的方法findField(),该方法能根据表单域的id或name得到表单域对象,然后 * 通过表单域对象的getValue()方法得到用户输入的值 * findField()方法的源码如下: * findField: function(id){ * var field = this.items.get(id); * if(!field){ * this.items.each(function(){ * if(f.isFormField && (f.dataIndex == id || f.id ==id || f.getName() == id)){ * field =f ; * return false; * } * }); * } * return field || null; * } * 最开始findField()方法根据id来查找表单域对象,如果没找到,再根据name查找。所以我们定义 * name就行了,name还有另外一个功能,服务器在接受表单域的数据时,必须提供该属性 * * BasicForm类定义了一个名为reset()的方法,该方法将表单中的所有表单域重置,源码如下: * reset: function(){ * this.items.each(function(f){ * f.reset(); * }); * return this; * }
Ext学习_FormPanel3
最新推荐文章于 2024-09-08 13:23:35 发布