❖ Мышка-программышка в стране Информатике ❖ Друг — это тот, кто тебя знает, но всё равно любит
Полноценного наложения маски ввода на текстовое поле в стандартных средствах Экста нет (во всяком случае, в версии 3.3). Конечно, ничто не мешает написать собственный компонент наподобие дельфиевского MaskEdit — но это если есть время. А если нужна хотя бы минимальная проверка в момент ввода, то можно просто отфильтровать набор вводимых символов.
Итак, в экземплярах класса Ext.form.TextField и его потомков пользуемся такими свойствами:
maskRe : фильтрует непосредственно нажатия клавиш, и разрешает ввод только тех символов, которые разрешены заданным регулярным выражением — то есть эта проверка производится до валидации
stripCharsRe : фильтрует набранный текст опять-таки посимвольно, но уже после набора строки, и удаляет символы, соответствующие заданному здесь регулярному выражению — тоже проверяет текст до валидации
regex : регулярное выражение, по которому и производится валидация — проверке подвергаются не отдельные символы, а именно весь введённый в поле текст
Коротко: regex будет проверять всю строку, maskRe — ввод каждого отдельного символа. maskRe определяет разрешённые символы, stripCharsRe — запрещённые.
Например:
в поле должно быть ровно пять цифровых символов — определяем такие свойства:
regex: /^\d{5}$/i,
maskRe: /\d/i
разрешить в поле только спец. символы:
stripCharsRe: /[a-zA-Z0-9]/ig
Ссылки в тему: ать, два.
Итак, в экземплярах класса Ext.form.TextField и его потомков пользуемся такими свойствами:
maskRe : фильтрует непосредственно нажатия клавиш, и разрешает ввод только тех символов, которые разрешены заданным регулярным выражением — то есть эта проверка производится до валидации
stripCharsRe : фильтрует набранный текст опять-таки посимвольно, но уже после набора строки, и удаляет символы, соответствующие заданному здесь регулярному выражению — тоже проверяет текст до валидации
regex : регулярное выражение, по которому и производится валидация — проверке подвергаются не отдельные символы, а именно весь введённый в поле текст
Коротко: regex будет проверять всю строку, maskRe — ввод каждого отдельного символа. maskRe определяет разрешённые символы, stripCharsRe — запрещённые.
Например:
в поле должно быть ровно пять цифровых символов — определяем такие свойства:
regex: /^\d{5}$/i,
maskRe: /\d/i
разрешить в поле только спец. символы:
stripCharsRe: /[a-zA-Z0-9]/ig
Ссылки в тему: ать, два.