#javascript #regex #extjs
#javascript #регулярное выражение #extjs
Вопрос:
Как мне принудительно применить регулярное выражение к элементу поля в fieldset? Например, в приведенном ниже коде есть Country
поле, но мне нужно принудительно проверять регулярное выражение, когда текстовое поле выходит из фокуса. Идея заключается в использовании Ext.ApplyIf
, но интересно, как я мог бы это сделать?
Ext.create('Ext.form.Panel', {
fullscreen: true,
items: [
{
xtype: 'fieldset',
title: 'About You',
instructions: 'Tell us all about yourself',
items: [
{
xtype: 'textfield',
name : 'firstName',
label: 'First Name'
},
{
xtype: 'textfield',
name : 'lastName',
label: 'Last Name'
},
{
xtype: 'textfield',
name : 'country',
label: 'Country',
regex: /^[A-Z]{2}$/,
regexText: 'Two letter country code (ISO 3166-1 alpha 2 standard) (eg:NO)!',
allowBlank: false
}
]
}
]
});
Ответ №1:
Из fullscreen: true
я предполагаю, что это современный extjs.
В extjs modern вы можете прослушивать только focus
событие, подобного которому нет focusleave
(которое существует в extjs classic toolkit). В extjs modern также textfield не имеет таких параметров, как regex и regexText.
Вы не можете этого сделать с помощью основных функций extjs-field.
Посмотрите на Ext.field.Определение текста.