0

どの「入力」タグがクリックされたかに基づいてテーブル要素を非表示にするフィルター用の単純なバックボーン ビューを作成しました。

var Filter = Backbone.View.extend({
tagName: "form",
events: {
    "click input[name='2013']" : "filter2013",
    "click input[name='2012']" : "filter2012"
},
filter2013: function() {
    $("tr:contains('2013-')").toggle();
},
filter2012: function() {
    $("tr:contains('2012-')").toggle();
},
render: function() {
    this.$el.html(JST['acquisitions/filter']);
    $("#filter-container").append(this.$el);
    return this;
}
});

特に「入力」要素を追加したい場合は、まったくエレガントではありません。これにより、ビューでコードを繰り返すカスタム関数が増えます。おそらく、for ループを jquery と組み合わせて、Web ページ内の数字 (2013、2012、2011 など) を検索し、それに基づいてイベントを生成します。または、イベントをビューから完全に取り出す必要があるかもしれません。

助言がありますか?

4

1 に答える 1