1

我很好奇将我的 DOM 操作代码放在哪里。像表单提交等一些事件。

因为当我把它们放到:

Template.friendRow.rendered = function() {  
   function sendMessage() {
     console.log("Message sent");
   }
   $(document).on('submit', 'form.sendMessageForm', sendMessage);
}

在控制台中,我看到 2x“消息已发送”。

为什么以及如何修复它或将代码放在哪里?

4

1 回答 1

0

.rendered()不是提交表单的正确位置。它是每次渲染或重新渲染模板时调用的回调。

将您的表单处理代码移动到click与表单提交相关联的任何事件处理程序。例如

'click #submit_btn' : function(){
   // your form submission code
}

请参阅http://docs.meteor.com/#eventmaps

于 2013-06-25T11:58:01.557 回答