Событие щелчка магистрали не запускается в шаблоне View
Я работаю над приложением Backbone, которое основано на динамическом шаблоне. У меня есть представление заголовка, боковой панели и нижний колонтитул, которые динамически инициализируются при вызове любого другого представления. Проблема в том, что в каждом представлении шаблона есть события, которые не запускаются. Например, у меня есть кнопка, которая меняет язык в представлении заголовка, но его событие не запускается.
Мой заголовок Просмотр:
define([ "jquery", "backbone", "text!../../pages/header.html" ], function($,
Backbone, headerTpl) {
var header = Backbone.View.extend({
events : {
"click #enBtn":"swichToEnglish",
"click #frBtn":"swichToFrench"
},
initialize : function(options) {
_.bindAll(this, "swichToFrench","swichToEnglish");
this.render(options.parent);
//$("#enBtn").css("pointer-events","none");
},
render : function(parent) {
this.template = _.template(headerTpl);
$(parent).append(this.template);
return this;
},
swichToFrench:function(){
console.log("switch to frensh");
if(i18n.currentLocal == 'en'){
i18n.currentLocal='fr';
$("#frBtn").css("pointer-events","auto");
this.render(options.parent);
}
},
swichToEnglish:function(){
console.log("switch to English");
if(i18n.currentLocal == 'fr'){
i18n.currentLocal='en';
$("#enBtn").css("pointer-events","auto");
$("#frBtn").css("pointer-events","none");
this.render(options.parent);
}
}
});
return header;
});
Представление заголовка вызывается в маршрутизаторе:
self._header = new Header({parent: $(".main_container")});
Любые идеи, как решить эту проблему. Мне нужно знать, как устроить эти события. Спасибо.