Как расширить функцию, объявленную внутри "options" в mootools? - PullRequest
2 голосов
/ 01 июля 2011

Я хочу расширить функцию " showError " для " Form.Validator.Inline " в mootools. Эта функция объявлена ​​внутри " options ".

Я попробовал приведенный ниже код, но он не работает.

var exFormValidator = new Class({
            Extends:  Form.Validator.Inline,
            options: {
                    showError: function(element) {
                        var error = element.getPrevious();
                        if(error != null){
                            error.dispose();
                        }
                        this.parent(element);
                    }
                }
        }); 

Я могу заставить его работать, скопировав код из " mootools-more ", как показано ниже:

        var exFormValidator = new Class({
            Extends:  Form.Validator.Inline,
            options: {
                    showError: function(element) {
                        var error = element.getPrevious();
                        if(error != null){
                            error.dispose();
                        }
                        if (element.reveal) element.reveal();
                        else element.setStyle('display', 'block');
                    }
                }
        });

но я не думаю, что это способ делать вещи. Есть ли альтернативный / правильный способ сделать это?

1 Ответ

0 голосов
/ 01 июля 2011

нашли ответ.В " Form.Validator.Inline " есть событие " onShowAdvice () ".Вы должны расширить его следующим образом:

        var formValidator = new Form.Validator.Inline(regForm, {
                errorPrefix: '',
                serial: false,
                onShowAdvice: function(element, advice) {
                    var error = advice.getPrevious();
                    if(error != null) {
                        error.dispose();
                    }
                }
            });

Функция showAdvice вызывает showError.Так что призывая это сделает вещь;но все же вопрос остается.Можно ли расширить функцию в " options "?

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