Javascript 如何从meteor中的提交事件中获取输入id?

Javascript 如何从meteor中的提交事件中获取输入id?,javascript,html,node.js,meteor,Javascript,Html,Node.js,Meteor,在一个模板中,我有: <template name="moviesTemplate"> <form> <ul> {{#each movies}} <li> {{title}} <input id="{{title}}" type="submit" value="Delete" /> </li>

在一个模板中,我有:

    <template name="moviesTemplate">
     <form>
       <ul>
         {{#each movies}}
           <li>
             {{title}} <input id="{{title}}" type="submit" value="Delete" />  
           </li> 
         {{/each}}
      </ul>
    </form>
    </template> 

    {{{每部电影}
  • {{title}}
  • {{/每个}}
当用户单击moviesTemplate上的Delete时,我希望在我的javascript文件中的事件中找到输入元素的id属性:

Template.moviesTemplate.events = {
    'submit': function (e, tmpl) {
        e.preventDefault();
        var theId = theButtonThatRaisedTheEvent.id.toString();  // <--- This is what I'm referring to

     }
 }
Template.moviestplate.events={
“提交”:函数(e、tmpl){
e、 预防默认值();
var theId=attraisedtheevent.id.toString()的按钮;//使用并抓取
id

Template.moviesTemplate.events = {
     'submit':function(e, tmpl){
         e.preventDefault();
      },
     'click input[type="submit"]':function(e, tmpl){
         console.log(e.currentTarget.id)
     }
 }

使用并抓取
id

Template.moviesTemplate.events = {
     'submit':function(e, tmpl){
         e.preventDefault();
      },
     'click input[type="submit"]':function(e, tmpl){
         console.log(e.currentTarget.id)
     }
 }

使用并抓取
id

Template.moviesTemplate.events = {
     'submit':function(e, tmpl){
         e.preventDefault();
      },
     'click input[type="submit"]':function(e, tmpl){
         console.log(e.currentTarget.id)
     }
 }

使用并抓取
id

Template.moviesTemplate.events = {
     'submit':function(e, tmpl){
         e.preventDefault();
      },
     'click input[type="submit"]':function(e, tmpl){
         console.log(e.currentTarget.id)
     }
 }

不幸的是,事情并没有那么简单

然而,一个起点是你们可能想要处理像按下元素上的“回车”键这样的事情

Template.moviesTemplate.events = {
    'click input[type=submit]': function(e, tmpl){
       tmpl.find('input[type=submit]').data('clicked',false);
       $(e.currentTarget).data('clicked',true);
    },
    'submit': function (e, tmpl) {
        e.preventDefault();
        var theId = tmpl.find('input[type=submit]').filter(function(i,ele){
          return $(ele).data('clicked');
        }).get(0).attr('id');    
     }
}

不幸的是,这并不是那么简单

然而,一个起点是你们可能想要处理像按下元素上的“回车”键这样的事情

Template.moviesTemplate.events = {
    'click input[type=submit]': function(e, tmpl){
       tmpl.find('input[type=submit]').data('clicked',false);
       $(e.currentTarget).data('clicked',true);
    },
    'submit': function (e, tmpl) {
        e.preventDefault();
        var theId = tmpl.find('input[type=submit]').filter(function(i,ele){
          return $(ele).data('clicked');
        }).get(0).attr('id');    
     }
}

不幸的是,这并不是那么简单

然而,一个起点是你们可能想要处理像按下元素上的“回车”键这样的事情

Template.moviesTemplate.events = {
    'click input[type=submit]': function(e, tmpl){
       tmpl.find('input[type=submit]').data('clicked',false);
       $(e.currentTarget).data('clicked',true);
    },
    'submit': function (e, tmpl) {
        e.preventDefault();
        var theId = tmpl.find('input[type=submit]').filter(function(i,ele){
          return $(ele).data('clicked');
        }).get(0).attr('id');    
     }
}

不幸的是,这并不是那么简单

然而,一个起点是你们可能想要处理像按下元素上的“回车”键这样的事情

Template.moviesTemplate.events = {
    'click input[type=submit]': function(e, tmpl){
       tmpl.find('input[type=submit]').data('clicked',false);
       $(e.currentTarget).data('clicked',true);
    },
    'submit': function (e, tmpl) {
        e.preventDefault();
        var theId = tmpl.find('input[type=submit]').filter(function(i,ele){
          return $(ele).data('clicked');
        }).get(0).attr('id');    
     }
}

在我看来,id似乎属于表单,而不是提交按钮。我将使用以下选项:


Template.main.events({
“提交表单”:函数(事件、模板){
event.preventDefault()//不要提交它!
var id=event.currentTarget.getAttribute('data-id')//获取id属性。
控制台日志(id)
}
})
更新

将您现在拥有的模板替换为:


    {{{每部电影}
  • {{title}}
  • {{/每个}}
并使用本文之前编写的事件处理程序

实际上,
事件处理程序中的这个
将是电影的上下文,因此处理程序可以是:

Template.main.events({
“提交表单”:函数(事件、模板){
event.preventDefault()//不要提交它!
var id=this.title//通过上下文获取标题。
控制台日志(id)
}
})

因此,无需在表单上使用
数据id
属性。

对我来说,该id似乎属于表单,而不是提交按钮。我将使用以下方法:


Template.main.events({
“提交表单”:函数(事件、模板){
event.preventDefault()//不要提交它!
var id=event.currentTarget.getAttribute('data-id')//获取id属性。
控制台日志(id)
}
})
更新

将您现在拥有的模板替换为:


    {{{每部电影}
  • {{title}}
  • {{/每个}}
并使用本文之前编写的事件处理程序

实际上,
事件处理程序中的这个
将是电影的上下文,因此处理程序可以是:

Template.main.events({
“提交表单”:函数(事件、模板){
event.preventDefault()//不要提交它!
var id=this.title//通过上下文获取标题。
控制台日志(id)
}
})

因此,无需在表单上使用
数据id
属性。

对我来说,该id似乎属于表单,而不是提交按钮。我将使用以下方法:


Template.main.events({
“提交表单”:函数(事件、模板){
event.preventDefault()//不要提交它!
var id=event.currentTarget.getAttribute('data-id')//获取id属性。
控制台日志(id)
}
})
更新

将您现在拥有的模板替换为:


    {{{每部电影}
  • {{title}}
  • {{/每个}}
并使用本文之前编写的事件处理程序

实际上,
事件处理程序中的这个
将是电影的上下文,因此处理程序可以是:

Template.main.events({
“提交表单”:函数(事件、模板){
event.preventDefault()//不要提交它!
var id=this.title//通过上下文获取标题。
控制台日志(id)
}
})

因此,无需在表单上使用
数据id
属性。

对我来说,该id似乎属于表单,而不是提交按钮。我将使用以下方法:


Template.main.events({
“提交表单”:函数(事件、模板){
event.preventDefault()//不要提交它!
var id=event.currentTarget.getAttribute('data-id')//获取id属性。
控制台日志(id)
}
})
更新

将您现在拥有的模板替换为:


    {{{每部电影}
  • {{title}}
  • {{/每个}}
并使用本文之前编写的事件处理程序

实际上,
事件处理程序中的这个
将是电影的上下文,因此处理程序可以是:

Template.main.events({
“提交表单”:函数(事件、模板){
event.preventDefault()//不要提交它!
var id=this.title//通过上下文获取标题。
控制台日志(id)
}
})
所以