1

如何仅在 extjs 中从键盘按 Tab 键时禁用文本字段?

4

2 回答 2

2

您可以将enableKeyEvents文本字段的属性设置为 true,然后检测tab keypress并禁用您的文本字段:

{
   xtype: 'textfield',
   ...
   enableKeyEvents: true,
   listeners : {
      keypress : function(textfield, e, options) {
         if (e.keyCode == 9) {
            textfield.setDisabled(true);
         }
      }
   }
}
于 2013-04-30T08:49:06.663 回答
1

如果将文本字段的 tabIndex 配置设置为负值,则无法使用 tab 键访问文本字段。例子:

Ext.create('Ext.form.Panel', {
    title: 'Contact Info',
    width: 300,
    bodyPadding: 10,
    renderTo: Ext.getBody(),
    items: [{
        xtype: 'textfield',
        name: 'name',
        fieldLabel: 'Name',
        tabIndex: 1
    }, {
        xtype: 'textfield',
        name: 'email',
        fieldLabel: 'Email Address',
        tabIndex: -1
    }]
});

在此示例中,无法通过按 Tab 键访问电子邮件文本字段。

于 2013-04-29T11:52:53.267 回答