Javascript 使用js访问meteor模板的DOM
这是我的流星模板:Javascript 使用js访问meteor模板的DOM,javascript,jquery,mongodb,meteor,Javascript,Jquery,Mongodb,Meteor,这是我的流星模板: {{#每个p} {{username}} {{content}} {{time}} 消息 {{/每个}} //PF模板 <template name="pf"> <form id="post-box"> <textarea id="new" required></textarea> <button type="submit">Post</button> </fo
{{#每个p}
{{username}}
{{content}}
{{time}}
消息
{{/每个}}
//PF模板
<template name="pf">
<form id="post-box">
<textarea id="new" required></textarea>
<button type="submit">Post</button>
</form>
</template>
邮递
//这是我的PF和PC的助手和事件处理程序,集合名称ROST
Template.pc.helpers({
p: function(){
return Rost.find({}, {sort:{created:-1}});
}
});
Template.pf.events({
'submit form': function(event){
event.preventDefault();
var content= document.getElementById('new').value;
var date= new Date(),
h=(date.getHours()<10?'0':'') +date.getHours(),
m=(date.getMinutes()<10?'0':'')+date.getMinutes();
var time=h+':'+m;
var username= Meteor.user().username;
Rost.insert({
content: content,
created:date,
time:time,
username: username
});
event.target.reset();
}
});
Template.pc.helpers({
p:函数(){
返回Rost.find({},{sort:{created:-1}});
}
});
Template.pf.events({
“提交表单”:函数(事件){
event.preventDefault();
var content=document.getElementById('new')。值;
变量日期=新日期(),
h=(date.getHours()在助手函数中,您应该已经可以通过this上下文变量或Template.instance().data访问此数据。您的事件处理程序应该如下所示:
'click cssSelector'(event,instance) {
event.preventDefault();
}
如您所见,第二个参数是模板实例,因此您可以使用instance.data访问数据,或者使用event.currentTarget确定单击的元素并从此处开始。请发布您的帮助程序或事件处理代码,以便我们可以看到您在帮助程序中尝试执行的操作和遇到的问题。函数,您应该已经可以通过this上下文变量或Template.instance().data访问此数据。您的事件处理程序应该如下所示:
'click cssSelector'(event,instance) {
event.preventDefault();
}
如您所见,第二个参数是模板实例,因此您可以使用instance.data访问数据,或者使用event.currentTarget确定单击的元素并从中继续。请发布您的帮助程序或事件处理代码,以便我们可以看到您正在尝试做什么以及有什么问题。您有很多方法可以解决此问题这样做。你想只显示用户名的值吗?DOM节点?Meteor方式?Jquery方式?Vanilla js?我想要值n DOM节点你有很多方法可以做到。你想只显示用户名的值吗?DOM节点?Meteor方式?Jquery方式?Vanilla js?我想要值n DOM nodeTemplate.pc.helpers({p:function(){return Rost.find({}),{sort:{created:-1}}};}});Template.pf.events({'submit form':function(event){event.preventDefault();var content=document.getElementById('new')。value;var date=new date(),h=(date.getHours()我看不到您试图执行的操作。当您单击pc模板中的用户名时,我不知道您想对pf模板执行什么操作。要从pc模板中读取用户名,请执行以下操作:template.pc.events({'click.nm a'(事件,模板){event.preventDefault();alert($.trim($(event.currentTarget.text());})
。请检查。这是一个群组聊天应用程序……我需要从pc模板中获取{username}的值,这样我就可以删除当前用户的“message”链接[one't message it self],并使当前用户的帖子在另一端浮动………为此,我需要获取{username}的值n然后我必须比较一下,如果username==curent user.。然后将链接“message”的可见性更改为hidden,并使post在其他sideTemplate.pc.helpers({p:function(){return Rost.find({},{sort:{created:-1}};}}});Template.pf.events({'submit form':function(event){event.preventDefault();var content=document.getElementById('new').value;var date=new date(),h=(date.getHours())我看不到你在尝试做什么。当你从pc模板中单击用户名时,我不知道你想用pf模板做什么。无论如何,要从pc模板中读取用户名:template.pc.events({'click.nm a'(event,template){event.preventDefault();alert($.trim($(event.currentTarget.text());}})
。请检查。这是一个群组聊天应用程序……我需要pc模板中{username}的值,以便我可以删除当前用户的“message”链接[一个用户本身不发送消息]为了使当前用户的帖子在另一端浮动………为此,我需要得到{{username}}n的值,然后我必须比较username==curent user。,然后将链接“message”的可见性更改为hidden,并使帖子在另一端浮动