目前,我在将焦点放在extjs文本字段上时遇到问题。在显示表单时,我想将焦点设置为“名字”文本框,并尝试使用内置函数focus(),但仍然无法使其正常工作。
我很高兴看到您的建议。

var simple = new Ext.FormPanel({

    labelWidth: 75,
    url:'save-form.php',
    frame:true,
    title: 'Simple Form',
    bodyStyle:'padding:5px 5px 0',
    width: 350,
    defaults: {width: 230},
    defaultType: 'textfield',
    items: [{
            fieldLabel: 'First Name',
            name: 'first',
            id: 'first_name',
            allowBlank:false
        },{
            fieldLabel: 'Last Name',
            name: 'last'
        },{
            fieldLabel: 'Company',
            name: 'company'
        }, {
            fieldLabel: 'Email',
            name: 'email',
            vtype:'email'
        }, new Ext.form.TimeField({
            fieldLabel: 'Time',
            name: 'time',
            minValue: '8:00am',
            maxValue: '6:00pm'
        })
    ],

    buttons: [{
        text: 'Save'
    },{
        text: 'Cancel'
    }]
});

simple.render(document.body);

最佳答案

有时在对焦时会有所帮助。这是因为某些浏览器(肯定是Firefox 3.6)需要一些额外的时间来呈现表单元素。

请注意,ExtJS的focus()方法接受defer作为参数,因此请尝试执行以下操作:

Ext.getCmp('first_name').focus(false, 200);

关于javascript - 将重点放在Extjs文本字段上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6591371/

10-13 01:02