我知道有关此事的其他帖子,但到目前为止我看到的答案没有帮助,与我的情况略有不同。
window.BotView = Backbone.View.extend
initialize: ->
_.bindAll @, 'alert', 'render'
@el # by calling this here, it initializes the jQuery object
el: $("#submit")
model: Chatbot
events:
"click #submit" : "alert"
alert: ->
console.log("alert called")
alert("event observed")
render: ->
alert("Rendered")
jQuery ->
window.App = new BotView
console.log App.el
我想要的只是当我点击id
submit
alert
的提交按钮来启动events
功能时。但是,我甚至无法让它发挥作用。
click
#submit
处理el
上的el
处理程序无法正常工作?
我已经仔细检查过我的{{1}}是否已正确初始化,但即便如此,也无关紧要,因为点击处理程序未使用{{1}}
有没有人可以解释为什么这个简单的事件没有解雇?
提前致谢
答案 0 :(得分:8)
在您的事件中,您要说的是,在#submit元素中,查找一个被ID为#submit的元素。将其更改为
'click' : 'alert'
它应该可以正常工作。
jQuery等同于你的上述内容:
$('#submit').find('#submit').click(alert);