backbone.js - 主干选择更改事件未触发

标签 backbone.js

我有一个 View ,它在某些选择控件上定义了更改事件,但它们似乎没有触发。 View 是这样的:

var FiltersView = Backbone.Marionette.ItemView.extend({
    template: FiltersTmpl,
    events: {
        'change #panel_filters select': 'enableSearch'
    },
    enableSearch: function() {
        debugger;
    }
});

当我更改下拉列表时,enableSearch 不会触发。但是,使用 Chrome 开发工具,我可以使用 jQuery 设置像这样的事件处理程序 $("#panel_filters select").change(function() { debugger; }); ,事实上确实如此火。所以我知道选择器是正确的并且选择正在触发更改事件。我知道这一定是一个简单的语法问题,但对我来说这似乎是正确的语法。

最佳答案

好吧,我明白了。 #panel_filters 实际上是我将 View 注入(inject)到的元素。从技术上讲,它被认为是在 View 之外。显然, View 事件的范围仅限于 View 本身。我想这很方便,但我不知道。很高兴知道:-)

关于backbone.js - 主干选择更改事件未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18661395/

相关文章:

javascript - 使用 Backbone 将 "this"传递给引导框回调

javascript - 使用 sinon.fakeServer 获取夹具数据

backbone.js - 如何获取用户输入数据的值(value)?

backbone.js - 使用主干进行批量删除

javascript - 如何使用 Require JS 加载 JSON.js 库以使 Backbone 应用程序在 IE7 中运行?

jquery - 在 jQuery 中绑定(bind) 'touchstart' 事件不适用于 android phonegap 和 backbone

Backbone.js:在 PHP 中从服务器检索集合

javascript - Backbone Event 触发不同 View 之间的协调

backbone.js - 在 Backbone.js 中更改路由之前执行一个函数

javascript - Backbone : restore focus after rendering