首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何扩展mootools中在“选项”中声明的函数?

如何扩展mootools中在“选项”中声明的函数?
EN

Stack Overflow用户
提问于 2011-07-01 01:41:26
回答 1查看 188关注 0票数 2

我想在mootools中扩展"Form.Validator.Inline“的"showError”函数。该函数在"options“中声明。

我尝试了下面的代码,但它不起作用。

代码语言:javascript
复制
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“复制代码使其工作,如下所示:

代码语言:javascript
复制
        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');
                    }
                }
        });

但我不认为这是做事的方式。有什么替代的/正确的方法吗?

EN

回答 1

Stack Overflow用户

发布于 2011-07-01 12:17:55

找到了答案。在"onShowAdvice()“中有一个"Form.Validator.Inline".事件您必须按以下方式扩展它:

代码语言:javascript
复制
        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“中扩展函数?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6542823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档