ゾンビ ビューを処理するためにバックボーン サポートを使用するのは初めてです。導入する前は、次のような問題はありませんでした。
this.$el.append(this.template());
// this view fills up a select with options taken from a web services
this.renderChildInto(new App.view.ResourcesView({name: "idActivityDesc", url: "/wfc-services/resources/activities"}), "#divIdActivityDesc");
// population of the forms elements according to the loaded model
this.populateSelectElements();
this.populateTextElements();
if(this.model.get('completed')) {
this.$("#active").removeAttr("disabled");
}
this.delegateEvents(this.events);
return this;
Firefoxでは、すべて正常に動作しています。モデルが空の場合、select
要素はデフォルトの要素で設定されます。私の場合、selectedIndexは-1です。
ビュー内でデバッグすると、すべて問題ないようです。メソッドを介して親にビューが発生するときに問題が発生しますrenderChildInto
。populateSelectElements()
dom は問題ありませんが、モデルが空の場合に由来する変更はありません。空でない場合、問題はなく、ビューは正常に機能しています。
return this;
ステートメントの前に、Chrome/Chromium でもselectedIndexが-1になっているので、私は本当に困惑しています。しかし、ブラウザーでレンダリングされた最終的なビューでは、 selectedIndexが0になっていることがわかります。
composite_view.js で呼び出されるコードは次のとおりです。
renderChild: function(view) {
view.render();
this.children.push(view);
view.parent = this;
},
renderChildInto: function(view, container) {
this.renderChild(view);
this.$(container).html(view.el);
},