METEOR:粘贴事件(客户端)调用meteor方法

时间:2014-12-26 17:48:36

标签: javascript jquery meteor

我试图使用以下JQuery代码来调用Meteor方法:

$('html').bind('paste', function(e) {
    Meteor.call('click', document.getElementById("box").value);
});

我将此代码放在html的脚本标记中,并确认在需要调用代码时调用代码。但是,不是调用Meteor方法("点击")而是简单地粘贴该行:

Meteor.call('click', document.getElementById("box").value);

进入textarea我试图粘贴。

有没有办法从JQuery绑定调用Meteor方法?或者也许有一个Meteor事件可以做到这一点?要么会这样做!谢谢!

如果有帮助,

document.getElementById("box").value

只是一个字符串,我正在点击'点击'方法。另外,我还在研究我的JQuery技能。

2 个答案:

答案 0 :(得分:1)

这就是诀窍:

Template.textGoesHere.events({
    'input #thebox': function (e) {
        Meteor.call('click', $("#thebox").val());
    }
});

每次文本区域收到输入时,即使删除了文本,也会调用Meteor功能“input #thebox”。

这正是我所需要的!

答案 1 :(得分:0)

我不会依赖'输入'事件,因为正如流星文档所说:

  

“其他DOM事件也可用,但对于上述事件,Meteor已经注意确保它们在所有浏览器中统一运行。”

还有一个注释:

  

“对于文本字段,请使用模糊或关键事件来响应更改。”

所以我会像这样编码这个事件(keydown而不是输入):

Template.textGoesHere.events({
    'keydown #thebox': function (e) {
        Meteor.call('click', e.target.value);
    }
});

此外,我已将值更改为 e.target.value ,因为它已经在内部事件中(您不需要使用jquery搜索DOM)