私は、Soundcloud から取得した曲を表示するバックボーン アプリケーションに取り組んでいます。曲のコレクションのフィルターとして機能する検索バーがあります。
結果は曲のリストです
var matched = results.filter(function(model) {
return model.attributes.title.toLowerCase().indexOf(val.toLowerCase()) > -1
});
results.reset(matched);
これは問題なく動作し、入力すると曲が消えます。しかし、検索文字列に再び出会ったら、それらをコレクションに戻す方法を見つけようとしています。
この時点で、空の検索文字列に戻ると、表示されるのは検索で到達した結果だけです。
==================編集==================
これが私がやったことです
$("#query").on('focus', function(){
var history = results.clone();
$(this).on('keyup', function(){
var val = $(this).val();
var matched = history.filter(function(model) {
return model.get('title').toLowerCase().indexOf(val.toLowerCase()) > -1
});
results.reset(matched)
});