Extjs_最常用的表单

1:表单字段实例

Ext.onReady(function () {
            Ext.QuickTips.init();
            var f = new Ext.form.Panel({
                title: '表单',
                height: 220,
                width: 400,
                frame: true,
                renderTo: 'div1',
                defaults: {
                    //autoFitError:false   //展示错误时是否自动调整字段组件宽度
                    labelSeparator: ':',
                    labelWidth: 50,
                    width: 150,
                    allowBlank: false,//是否允许为空
                    blankText:'不允许为空',
                    //labelAlign: 'left',
                    //msgTarget:'qtip ' //显示一个浮动的提示信息
                    //msgTarget: 'under' //下主主显示
                    //msgTarget: 'none'  //不显示
                    //msgTarget: 'errorMsg' //在errorMsg里面显示
                      msgTarget: 'side' //在右边显示
                },
                items: [{xtype:'textfield',fieldLable:'姓名'},
                    { xtype: 'numberfield', fieldLable: '年龄' }]
            });
        });
View Code

 

 2:Ext.form.Text文本域

 Ext.onReady(function () {
            Ext.QuickTips.init();
            var loginForm = new Ext.form.Panel({
                title: 'Ext.form.file.Text',
                bodyStyle: 'padding:5 5 5 5',
                frame: true,
                height: 120,
                width: 200,
                renderTo: 'div1',
                defaultType: 'textfield',
                defaults: {
                    labelSeparator: ':',
                    labelWidth: 50,
                    width: 120,
                    allowBlank: false,
                    labelAlign: 'left',
                    msgTarget:'side'
                },
                items: [{
                    fieldLabel: '用户名',
                    name: 'userName',
                    selectOnFocus: true,
                    regex: /^([\w+]+)(.[\w]+)*@([\w-]+\.){1,5}([A-Za-z]){2,4}$/,
                    regexText: '验证错误',
                }, {
                    name: 'password',
                    fieldLabel: '密码',
                    inputType: 'password'
                }],
                buttons: [{
                    text: '登陆',
                    handler: function () {
                        loginForm.form.setValues({ userName: 'user@com', password: '123456' });
                    }
                }]
            });
View Code

 

3:Ext.form.TextArea文本框

Ext.onReady(function () {
            Ext.QuickTips.init();
            var testForm = new Ext.form.Panel({
                title: 'TextArea测试',
                bodyStyle: 'padding: 5 5 5 5',
                frame: true,
                height: 150,
                width: 250,
                renderTo: 'div1',
                items: [{
                    xtype: 'textarea',
                    fieldLabel: '备注',
                    id: 'memo',
                    labelSeparator: ': ',
                    labelWidth: 60,
                    width:200
                }],
                buttons: [{
                    text: '确定', handler: function () {
                        var memo = testForm.getForm().findField('memo');
                        alert(memo.getValue());
                    }
                }]
            });
        });
View Code

 

4:Ext.form.Number,少写了一个new字。。结果找了半个小时才找到错在哪里,伤不起的Ext

 Ext.onReady(function () {
            Ext.QuickTips.init();
            var loginform =new Ext.form.Panel({
                title: 'Ext.form.file.Number',
                bodyStyle: 'padding:5 5 5 5',
                renderTo: 'div1',
                frame: true,
                height: 150,
                width: 250,
                defaultType: 'numberfield',
                defaults: {
                    labelSeparator: ': ',
                    labelWidth: 80,
                    width: 200,
                    labelAlign: 'left',
                    msgTarget: 'side',
                    allowBlank: false
                },
                items: [{
                    fieldLabel: '整数',
                    hideTrigger: true,//隐藏微调设置
                    allowDecimals: false,
                    nanText: '请输入有效的整数'
                },
               {
                   fieldLabel: '小数',
                   decimalsPrecision: 2,//精确到小数两位
                   allowDecimals: true,
                   nanText: '请输入有效的小数'
               },
               {
                   fieldLabel: '数字限制',
                   baseChars: '12345'
               },
               {
                   fieldLabel: '数值限制',
                   maxValue: 100,
                   minValue: 50
               }]
            });
        });
View Code

 

5:Ext.form.CheckBox && Ext.form.radio

 Ext.onReady(function () {
            new Ext.form.Panel({
                title: 'checkBox and radio',
                bodyStyle: 'padding:5 5 5 5',
                frame: true,
                height: 150,
                width: 250,
                renderTo: 'div1',
                defaults:
                    {
                        labelSeparator: ': ',
                        labelWidth: 80,
                        width: 200,
                        labelAlign:'left'
                    },
                items: [
                    {
                    xtype: 'radio',
                    name: 'sex',
                    fieldLabel: '性别',
                    boxLabel:'',
                },
                {
                    xtype: 'radio',
                    name: 'sex',//name相同,则为一组
                    fieldLabel: '性别',
                    boxLabel:''
                },
                {
                    xtype: 'checkboxfield',
                    name: 'swim',
                    fieldLabel: '爱好',
                    boxLabel:'游泳'
                },
                {
                    xtype: 'checkboxfield',
                    name: 'walk',
                    fieldLabel: '爱好',
                    boxLabel:'散步'
                }]
            });
        });
View Code

 

6:Ext.form.CheckboxGoup && Ext.form.radioGrop

Ext.onReady(function () {
            new Ext.form.Panel(
                {
                    title: '啊啊啊。。好多啊',
                    bodyStyle: 'padding:5 5 5 5 ',
                    frame: true,
                    height: 100,
                    width: 270,
                    renderTo: 'div1',
                    defaults:
                        {
                            labelSeparator: ': ',
                            labelWidth: 50,
                            width: 200,
                            labelAlign:'left'
                        },
                    items: [{
                        xtype: 'radiogroup',
                        fieldLabel: '性别',
                        columns: 2,
                        items:[
                            { boxLabel: '', name: 'sex', inputValue: 'male' },
                            { boxLabel: '', name: 'sex', inputValue: 'female' }
                        ]
                    },
                    {
                        xtype: 'checkboxgroup',
                        fieldLabel: '爱好',
                        columns: 3,
                        items: [
                            {
                                boxLabel:'游泳',name:'swim'
                            }, { boxLabel: '散步', name: 'walk' }, { boxLabel: '阅读', name: 'reading' },
                            { boxLabel: '游戏', name: 'game' }, { boxLabel: '电视', name: 'tv' }
                        ]
                    }]
                }
            );
        });
View Code

 

7:Ext.form.Trigger解发字段

Ext.onReady(function () {
            var test =new Ext.form.Panel(
                {
                    title: 'Trriger演示',
                    bodyStyle: 'padding:5 5 5 5 ',
                    frame: true,
                    height: 100,
                    width: 270,
                    renderTo: 'div1',
                    defaults:
                        {
                            labelSeparator: ': ',
                            labelWith: 70,
                            width: 200,
                            labelAlign:'right'
                        },
                    items: [{
                        xtype: 'triggerfield',
                        id: 'memo',
                        fieldLabel: '触发字段',
                        hideTrigger: false,
                        onTriggerClick: function () {
                            var memo = test.getForm().findField('memo');
                            alert(memo.getValue());
                            Ext.getCmp('memo').setValue('test');
                        }
                    }]
                });
        });
View Code

 

8:Ext.form.Picker 拾取器字段,是抽象类,不能实例化,只能用子类

 

10:Ext.form.field.Time时间选择框,继承自Picker组件

 

8:Ext.form.Spinner微调字段

 Ext.onReady(function () {
            new Ext.form.Panel({
                title: 'Spinner',
                bodyStyle: 'padding:5 5 5 5',
                frame: true,
                height: 70,
                width: 250,
                renderTo: 'div1',
                defaults:
                    {
                        labelSeparator: ': ',
                        labelWidth: 70,
                        width: 200,
                        labelAlign:'left'
                    },
                items: [{
                    xtype: 'spinnerfield',
                    fieldLabel:'微调啦',
                    id: 'salary',
                    value: 100,
                    onSpinUp: function () {
                        var salaryCmp = Ext.getCmp('salary');
                        salaryCmp.setValue(Number(salaryCmp.getValue()) + 1);
                    },
                    onSpinDown: function () {
                        var salaryCmp = Ext.getCmp('salary');
                        salaryCmp.setValue(Number(salaryCmp.getValue()) - 1);
                    }
                }]
            });
        });
View Code

 

9:Ext.form.Time

Ext.onReady(function () {
            Ext.QuickTips.init();
            Ext.create("Ext.form.Panel",
                {
                    title: 'time显示',
                    renderTo: Ext.getBody(),
                    bodyPadding: 5,
                    frame: true,
                    height: 100,
                    width: 300,
                    items: [{
                        fieldLabel: '时间选择框',
                        xtype: 'timefield',
                        width: 220,
                        labelSeparator: ': ',
                        msgTarget: 'side',
                        autoFitError: false,
                        maxValue: '18:00',
                        maxText: '时间应该小于{0}',
                        minValue:'10:00',
                        minText: '时间应该大于{0}',
                        pickerMaxHeight: 70,
                        increment: 60,
                        format: 'G时i分s秒',//G表示24小时记时法,g12,H24带0,h12带0
                        invalidText:'时间格式无效'
                    }]

                });
        });
View Code

 

10:Ext.form.Date

 Ext.onReady(function () {
            Ext.QuickTips.init();
            Ext.create("Ext.form.Panel", {
                title: 'date 示例',
                frame: true,
                height: 100,
                width: 300,
                renderTo: Ext.getBody(),
                bodyPadding: 5,
                items: [{
                    fieldLabel: '日期选择框',
                    xtype: 'datefield',
                    labelSeparator: ': ',
                    msgTarget: 'side',
                    autoFitError: false,
                    format: 'Y年m月d日',
                    maxValue: '12/31/2008',
                    minValue: '01/01/2008',
                    disabledDates:['2008年03月12日'],
                    disabledDatesText: '禁止选择该日期',
                    disabledDays: [0, 6],
                    disabledDaysText: '禁止选择该日期',
                    width: 220,
                    value:'12/31/2008'
                }]

            });
        });
View Code

 

11:Ext.form.Hidden-------------暂时不这写了。。写的想吐了。

 

posted @ 2013-10-29 19:13  jessetang  阅读(229)  评论(0编辑  收藏  举报