T Nguyen
T Nguyen

Reputation: 3415

Backbone select change event not firing

I have a view which defines a change event on some select controls, but they don't seem to be firing. The view is something like this:

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

When I change the dropdown, enableSearch doesn't fire. However, using Chrome Dev Tools, I can use jQuery to setup an event handler like this $("#panel_filters select").change(function() { debugger; }); and that does in fact fire. So I know the selector is correct and the select is triggering a change event. I know it must be a simple syntax problem but it seems like the correct syntax to me.

Upvotes: 2

Views: 4262

Answers (1)

T Nguyen
T Nguyen

Reputation: 3415

Ok I figured it out. #panel_filters is actually the element that I injected my view into. Technically, it's considered outside the view. And apparently, view events are scoped to the view itself. Which is handy I suppose, but I didn't know that. Good to know :-)

Upvotes: 2

Related Questions