特定のオブジェクトの属性を検索するために使用できるVisualSearch.jsクエリボックスを実装しようとしています。VisualSearch.jsは、カテゴリを持つことができるファセットを提供しますが、モデル名のファセットをロードする方法を知っています(例:「user」)。クリック/選択すると、その前に属性のリストを含む2番目のサブファセットをロードしますユーザーに、JSON呼び出しを介してロードされる値を最終的にクリックする機会を与えます。この種の機能への参照を検索しましたが見つかりませんが、誤った用語「サブファセット」を使用している可能性があります。
これが私が遊んでいるJSFiddleです。 http://jsfiddle.net/Savvy84/HRuAP/13/
var visualSearch = VS.init({
container: $('#visual_search'),
query: '',
callbacks: {
search: function(query, searchCollection) {},
facetMatches: function(callback) {
callback([
{
value: 'user.email',
label: 'users.email',
category: 'Users'},
{
value: 'job.name',
label: 'job.name',
category: 'Jobs'},
{
value: 'job.startDate',
label: 'job.startDate',
category: 'Jobs'}
]);
},
valueMatches: function(facet, searchTerm, callback) {
if (searchTerm.length > 0) {
//pass the facet to the search and let the server deal with it.
switch (facet) {
case 'user.email':
callback([
{
label: 'john.smith@example.com'},
{
label: 'jane.doe@example.com'}
]);
break;
}
}
}
} });
どうもありがとう。