繁体   English   中英

流星:粘贴事件(客户端)以调用流星方法

[英]METEOR: Paste event (client side) to call meteor method

我正在尝试使用以下JQuery代码来调用Meteor方法:

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

我将此代码放在html的脚本标签中,并确认在需要调用该代码时会调用该代码。 但是,粘贴而不是调用Meteor方法(“单击”)只是粘贴以下行:

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

到我要粘贴的文本区域中。

有没有一种方法可以从JQuery绑定调用流星方法? 也许有一个流星事件可以做到这一点? 都可以! 谢谢!

如果有帮助,

document.getElementById("box").value

只是我要传递给'click'方法的字符串。 而且,您可能会告诉我,我仍在研究JQuery技能。

这是什么把戏:

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

每当文本区域接收到输入时,即使删除了文本,也会调用Meteor函数“ input #thebox”。

这正是我需要的!

我不会依赖“输入”事件,因为流星文档说:

“其他DOM事件也可以使用,但是对于上述事件,Meteor采取了一些措施以确保它们在所有浏览器中均能正常工作。”

还有一个注意事项:

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

所以我会像下面这样编码此事件(用keydown代替输入):

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM