Получить и предупредить сообщение об ошибке текстового поля в Extjs - PullRequest
2 голосов
/ 02 января 2012

Я использую extjs2.x создал форму:

Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';    

var form = new Ext.form.FormPanel({
    items: [{
        xtype: 'textfield',
         xtype: 'textfield',
         name: 'name',
         anchor: '95%',
         fieldLabel: '<span style="color:red">*</span> Name',
         allowBlank: false,
         blankText: 'Name should not be null'
    }]
});

Когда я оставлю поле пустым и отправлю форму, оно будет иметь красный '!'с правой стороны, и если я наведу на него курсор, появится сообщение «Имя не должно быть пустым».

Но я хочу предупредить об этом.Как получить текущее сообщение об ошибке первого недопустимого поля и перезапустить его?Я проверил документацию по API и искал в Google, но не повезло.

Ответы [ 2 ]

7 голосов
/ 03 января 2012

Вот вы:

form.items.each(function(x) {
    if (x.validate === undefined) {
        return;
    }
    x.validate();
    alert(x.getActiveError());
});

Это работает в Ext 4.0 и 3.4 как минимум.У меня нет более старой версии, чтобы проверить это.

0 голосов
/ 16 мая 2013

Пожалуйста, отметьте это решение, опубликованное Animal. Это очень хороший и мощный код (может сделать гораздо больше, что вам нужно, но даст вам идеи).
Существуют версии для Extjs 3.x и 4.x.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...