您的位置:首页 > Web前端 > HTML

Ext.widgets-form(上)BasicForm/ Field/ Checkbox/ Radio/ HtmlEditor/ TextField

2009-06-09 09:58 525 查看
Ext.form.BasicForm

对应一个dom中的form,默认是用ajax提交的,如果的确想回传,可以使用如下方式

var myForm = new Ext.form.BasicForm("form-el-id", {

onSubmit: Ext.emptyFn,

submit: function() {

this.getEl().dom.submit();

}

});

方法:

BasicForm( Mixed el, Object config )

其中config配置为

{

baseParams : Object, //请求时的附加参数,格式为{id: '123', foo: 'bar'}

errorReader : DataReader, //提交时发生验证错误,这个dataReader将会被使用

fileUpload : Boolean, //支持文件上传

method : String, //GET或者POST

reader : DataReader, //load时使用的数据读取器

timeout : Number, //超时时间

trackResetOnLoad : Boolean,//支持使用reset方法恢复原始值

url : String //form要提交的url地址

}

add( Field field1, [Field field2], [Field etc] ) : BasicForm

增加字段field1,field2,etc

applyIfToFields( Object values ) : BasicForm

applyToFields( Object values ) : BasicForm

用传入的values呼叫Ext.applyIf/apply 方法

clearInvalid() : BasicForm

清除当前basicform中所有的非法信息

doAction( String/Object actionName, [Object options] ) : BasicForm

执行预定义的动作actionName,actionName类似"submit","load",也可以是自定义的动作的名字或一个Ext.form.Action的实例,options类似如下对象{

url :String,

method :String,

params :String/Object,

success :Function,

failure :Function,

clientValidation :Boolean

}

findField( String id ) : Field

在当前form中查找id/dataindex/name等于传入的id的field对象

getEl() : Ext.Element

得到当前form对象的element对象

getValues( Boolean asString ) : Object

得到当前form的fields {name:value,name:values}json对象,如果有同名多值,value将是一个数组

isDirty() : Boolean

从初始载入后,是否有field被修改过

isValid() : Boolean

客户端验证成功?

load( Object options ) : BasicForm

等效于doAction('load',options);

loadRecord( Record record ) : BasicForm

从一个record对象取值到当前basicform

markInvalid( Array/Object errors ) : BasicForm

标志非法,[{id:'fieldId', msg:'The message'},...]这样格式的数组或者{id: msg, id2: msg2}格式的对象

remove( Field field ) : BasicForm

从basicform中移除field

render() : BasicForm

在basicForm的fields中寻找,利用id属性检查他们,然后用id属性呼叫applyTo方法

reset() : BasicForm

重置所有值

setValues( Array/Object values ) : BasicForm

设置值,参见getValues

submit( Object options ) : BasicForm

提交表单

updateRecord( Record record ) : BasicForm

利用当前更新record对象,参见loadRecord

事件:

actioncomplete : ( Form this, Action action )

actionfailed : ( Form this, Action action )

beforeaction : ( Form this, Action action )

Ext.form.Field

有了form之后,我们当然还需要field

方法:

Field( Object config )

其中config设置为{

autoCreate : String/Object, //一个{tag: "input", type: "text",
size: "20", autocomplete: "off"}这样的对象,或者选
择true,就是前面所说的那个固定内置对象

clearCls : String, //,默认x-form-clear-left

cls : String, //默认样式

disabled : Boolean,

fieldClass : String //x-form-field

fieldLabel : String

focusClass : String //x-form-focus

hideLabel : Boolean //隐藏前导标签

inputType : String //input type="???"

invalidClass : String //x-form-invalid

invalidText : String

itemCls :String

labelSeparator : String //分隔符

msgFx : String

msgTarget : String

name : String

readOnly : Boolean

tabIndex : Number

validateOnBlur : Boolean //true

validationDelay : Number //250

validationEvent : String/Boolean //KeyUP

value : Mixed

}

构造很麻烦的,但还好我们一般不会直接使用field

clearInvalid() : void

清除非法信息

getName() : String

getRawValue() : Mixed

getValue() : Mixed

isDirty() : void

isValid( Boolean preventMark ) : Boolean

markInvalid( String msg ) : void

reset() : void

setRawValue( Mixed value ) : void

setValue( Mixed value ) : void

validate() : Boolean

都很简单也略过了

事件

blur : ( Ext.form.Field this )

change : ( Ext.form.Field this, Mixed newValue, Mixed oldValue )

focus : ( Ext.form.Field this )

invalid : ( Ext.form.Field this, String msg )

specialkey : ( Ext.form.Field this, Ext.EventObject e )

valid : ( Ext.form.Field this )

Ext.form.Checkbox

继承自Field, 复选框

Checkbox( Object config )

构造,其中config{

autoCreate : String/Object,

boxLabel : String,

checked : Boolean,

fieldClass : String,//x-form-field

focusClass : String,

}

getValue() : Boolean

initComponent() : void

setValue( Boolean/String checked ) : void

事件

check : ( Ext.form.Checkbox this, Boolean checked )

Ext.form.Radio

继承自Ext.form.Checkbox,单选框

多了一个方法

getGroupValue() : String

如果单选框是一组radio 的一部分,取当前选中的值

Ext.form.Hidden

继承自Field,隐藏字段,无新特性

Ext.form.HtmlEditor

继承自Field,这个htmleditor功能太简单了,什么人能扩充一下就好了

config定义{

createLinkText : String //

defaultLinkValue : String // http://
enableAlignments : Boolean

enableColors : Boolean

enableFont : Boolean

enableFontSize : Boolean

enableFormat : Boolean

enableLinks : Boolean

enableLists : Boolean

enableSourceEdit : Boolean

fontFamilies : Array //这个当然要用汉字的字体组成的数组了

}

方法

cleanHtml( String html ) : void

createToolbar( HtmlEditor editor ) : void

execCmd( String cmd, [String/Boolean value] ) : void

getDocMarkup() : void

getToolbar() : Ext.Toolbar

insertAtCursor( String text ) : void

pushValue() : void

relayCmd( String cmd, [String/Boolean value] ) : void

syncValue() : void

toggleSourceEdit( [Boolean sourceEdit] ) : void

updateToolbar() : void

要提一点的是,要使用HtmlEditor,别忘了先Ext.QuickTips.init();

Ext.form.TextField

config{

allowBlank : Boolean //允许为空

blankText : String //如果为空验证错误时的提示文字 ,默认This field is required

disableKeyFilter : Boolean

emptyClass : String

emptyText : String

grow : Boolean // 自动生长?,如果需要,会加宽当前input type="text"

growMax : Number

growMin : Number

maskRe : RegExp //仅允许输入与maskRe匹配的按键

maxLength : Number

maxLengthText : String //超出最大长度时提示文本

minLength : Number

minLengthText : String //不够最小长度时提示信息

regex : RegExp //正则匹配

regexText : String //提示

selectOnFocus : Boolean

validator : Function //自定义验证方法,接受当前字段的值,如果合法,返回真,反之返回自定义信息

vtype : String //Ext.form.VTypes 中定义的vtype类型名,支持简单的类型验证

vtypeText : String//如果不是,则提示

}

方法:

TextField( Object config )

构造

autoSize() : void

自动尺寸

reset() : void

重置

selectText( [Number start], [Number end] ) : void

选择文本

validateValue( Mixed value ) : Boolean

验证值

作者姓名:blackant2

作者博客:http://blog.csdn.net/blackant2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: