アプリケーションの開始ページには検索ボックスがあり、検索ボックスの下に便利なリンクのリスト (お気に入りなど) があります。
誰かが検索ボックスにテキストを入力すると、お気に入りが消え、検索結果だけが表示されるようにしたい.
ここでは、モバイル リスト ビューを使用して概念実証を実装しました。
$("#local-filterable-listview").kendoMobileListView({
dataSource: dataSource,
template: $("#mobile-listview-filtering-template").text(),
filterable: {
field: "ProductName",
operator: "startswith"
},
virtualViewSize: 100,
endlessScroll: true
});
display:hidden
リストビューの内容を設定する代わりに、データソースをnullに設定することを検討しています。この「可能性」はより良いアプローチです。
質問
検索ボックスにテキスト (プレースホルダー以外) があることを検出するにはどうすればよいですか?
- データソースは、必要に応じて設定/設定解除できます。
- 「お気に入り」は必要に応じて非表示/表示可能
私が確信していないことの 1 つは、検索ボックスにテキストを入力してからデータソースをバインドすると、結果はどうなるかということです。結果はフィルタリングされますか、それとも結果を再フィルタリングする必要がありますか? (Kendo UI でこれらの結果をフィルタリングする public メソッドはありません)
私はこれを自分で試してみますが、検索ボックスのテキストが変更されたかどうかを検出する方法がわかりません。text プロパティをポーリングすることはできますが、それは理想的とは言えない解決策のようです。