Meteor控制文本字段中的复制和粘贴

Meteor控制文本字段中的复制和粘贴,meteor,meteor-blaze,Meteor,Meteor Blaze,我试图阻止复制和粘贴我的Meteor应用程序模板中用户名字段中的空格,但我总是遇到如下所示的错误,有人能告诉我我做错了什么/遗漏了什么,还有没有其他方法可以控制Meteor模板中文本字段中粘贴的内容?谢谢 Template.UserRegisteration.events({ 'input #username':function(e,t){ this.value = this.value.replace(/\s/

我试图阻止复制和粘贴我的Meteor应用程序模板中用户名字段中的空格,但我总是遇到如下所示的错误,有人能告诉我我做错了什么/遗漏了什么,还有没有其他方法可以控制Meteor模板中文本字段中粘贴的内容?谢谢

        Template.UserRegisteration.events({
            'input #username':function(e,t){     
                 this.value = this.value.replace(/\s/g,'');
            }   
        });
错误:

Uncaught TypeError: Cannot read property 'replace' of undefined

是上下文,是输入id=“username字段所在的数据上下文


要获取字段的DOM元素,请使用
e.currentTarget
而不是
this

以下示例说明如何在Meteor事件中提取和设置DOM元素的值:


在Meteor events块中,“this”不是DOM元素,因此您无法对其调用值。

正如Akshat提到的,要获取字段DOM元素,请使用e.currentTarget,而不是这个,回到您的问题代码示例,请尝试以下操作

    Template.UserRegisteration.events({
        'input #username':function(e,t){     
             var text = e.currentTarget.value;
             e.currentTarget.value = text.replace(/\s/g,'');
        }   
    });

请在答案中提供相关代码。如果链接失效,您的答案将毫无用处。我正在尝试跟踪输入事件,如我的问题所示,不幸的是,使用event.target.text.value返回错误Uncaught TypeError:无法读取未定义的属性“value”
    Template.UserRegisteration.events({
        'input #username':function(e,t){     
             var text = e.currentTarget.value;
             e.currentTarget.value = text.replace(/\s/g,'');
        }   
    });