Backbone.jsビューのjQuery$とthis。$の違いは何ですか?ビューで、コレクションのリセットイベントをリッスンして、以下のコードを使用して要素を空にしました
//code in View
this.$("#the_id").empty();
ただし、要素が空にならなかったため、コードを次のように変更しました
$("#the_id").empty();
今回は動作します。それで、なぜthis。$は機能しないのですか?
Backbone.jsビューのjQuery$とthis。$の違いは何ですか?ビューで、コレクションのリセットイベントをリッスンして、以下のコードを使用して要素を空にしました
//code in View
this.$("#the_id").empty();
ただし、要素が空にならなかったため、コードを次のように変更しました
$("#the_id").empty();
今回は動作します。それで、なぜthis。$は機能しないのですか?
ビューでの呼び出しは、またはthis.$( selector )
の呼び出しと同じです。$( selector, this )
$(this).find( selector )
セレクターIEのコンテキストを提供し、セレクターthis
に一致するように下の要素のみが検索されますが、通常のjQuery$(selector)
はドキュメントのルート全体から検索を開始します。
ビューは、それが所有していない要素を操作するべきではありません。呼び出しthis.$("#the_id").empty();
が何もしない場合は、要素がビューの「制御領域」の下にないか、そもそも存在しないことを意味します。