【发布时间】:2015-02-03 07:30:14
【问题描述】:
我正在尝试实现类似于 facebook 的自动完成搜索栏(例如单击特定结果时的下拉结果,它应该指向相应的链接)。
我已经让自动完成功能正常工作(搜索结果仅显示文本),但我不确定如何将相应的链接/网址链接到结果。
非常感谢任何帮助。谢谢。
以下是我的 java 的 searchjson 方法,我已将其作为“GET”方法链接到路由。
public static Result searchJSON(String query) {
List<Account> userAccs = searchAccounts(query);
ObjectNode json = Json.newObject();
ArrayNode jsonArray = json.putArray("");
ObjectNode node = null;
for(Account acc : userAccs) {
node = jsonArray.addObject();
node.put("label", acc.getDisplayName());
node.put("id", acc.getId());
}
return ok(jsonArray);
下面是我的自动完成 javascript
var SearchBar = (function($) {
var search_data = function( request, response ) {
$.ajax({
url: "/search.json",
dataType: "json",
type: "GET",
data: {q: request.term },
success: function( data ) {
response( $.map( data, function( item ) {
return {
label: item.label,
id: item.id
};
}));
}
});
};
$("#searchfield").autocomplete({
source: search_data,
minLength: 1
});
return {
attach: attach_to_bar
};
}) (jQuery);
【问题讨论】:
标签: javascript jquery ajax json