在backbone.js应用程序中事件函数绑定的问题

时间:2011-05-24 03:19:24

标签: backbone.js

$(function(){
  window.Placements = Backbone.View.extend({
    el: $("#app"),
    events: {
      "submit form": "updatePlacement"
    },
    updatePlacement: function(e) {
      e.preventDefault();
      alert('foo');
    }
  });
  window.App = new Placements;
})

运行结果:

TypeError: Result of expression '$(this.el).delegate' [undefined] is not a function.

3 个答案:

答案 0 :(得分:3)

我使用的是jquery 1.3.2,但骨干需要更高版本(文档中没有提到版本号)

答案 1 :(得分:1)

我认为这是因为您正在设置el: $("#app"),,然后在$(this.el)中尝试再次this.el,您已经拥有了HTML对象$(#app)。尝试放el: '#app',看看会发生什么。

答案 2 :(得分:0)

我认为您的事件对象可能存在拼写错误:

事件类型应该是第一个:

提交表单而不是表单提交