我正在尝试让Semantic UI的搜索自动完成工作。一切似乎都在起作用,除了自动完成总是说没有找到结果的事实。
这是一个示例搜索:
即使服务器响应似乎工作正常,也是如此。
以下是使用JSON响应的服务器:
最后,这是我的JQuery代码:
$(".ui.search").search({
apiSettings: {
url : "/subtopics/search.json?query={query}"
},
fields: {
results : 'subtopics',
title : 'name'
},
minCharacters : 2
})
;
从我看到的所有示例中,这是告诉语义UI要查看哪些字段的正确方法,但它不起作用。
非常感谢任何有关此问题的帮助。
答案 0 :(得分:2)
事实证明,使用语义UI文档(http://semantic-ui.com/behaviors/api.html#response-callbacks)中包含的onResponse回调是解决此问题的方法。
以下是最终工作的代码:
$(".ui.search").search({
type: 'category',
minCharacters: 3,
apiSettings: {
onResponse: function(serverResponse) {
var
response = {
results: {}
}
;
//translate Server API response to work with search
$.each(serverResponse.subtopics, function(index, subtopic) {
var
topic = subtopic.topic || 'Unknown',
maxResults = 8
;
if(response.results[topic] === undefined) {
response.results[topic] = {
name: topic,
results: []
};
}
//add result to category
response.results[topic].results.push({
title: subtopic.name
});
});
return response;
},
url: "/subtopics/search.json?query={query}"
}
})
;