如何为 typeahead 写不同的 id
how to write different id for typeahead
我正在使用 rails 以及 elasticsearch 和 typeahead。
我有三个输入:公司、职位和导航(搜索公司和职位)。
我知道如何实现其中之一,但不知道如何在遵循 DRY 的同时实现所有这些。 autocomplete的路由、controller和js文件应该如何设计?
这是适用于一个的代码。
var numbers = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.whitespace,
queryTokenizer: Bloodhound.tokenizers.whitespace,
remote: {
url: "autocomplete?search=%QUERY",
wildcard: "%QUERY"
}
});
// initialize the bloodhound suggestion engine
numbers.initialize();
$("#nav_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
$("#company_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
$("#position_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
我重写
$("#nav_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
$("#company_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
$("#position_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
和
var array = ["#nav_search", "#company_search", "#position_search"]
for (i = 0; i < array.length; i++) {
$(array[i]).typehead({
items: 6,
souce: numbers.ttAdapter()
});
}
如果我没记错的话,这里AJAX
是包含在内的。所以他们正在向您的后端发出 GET
请求 url /autocomplete
remote: {
url: "autocomplete?search=%QUERY",
wildcard: "%QUERY"
}
您需要检查 Rails routes.rb
文件和 rake routes
的输出,因为请求 get /autocomplete
将由特定的控制器#action 处理。您需要从 rails routing
了解这一点
url /autocomplete
的获取请求正在传递以下输入参数
search = %QUERY
因此您的控制器操作将能够使用这些参数。
parameters[:search]
它会响应提供自动完成json。
如果您想获得更多帮助,我们需要更多信息
我正在使用 rails 以及 elasticsearch 和 typeahead。
我有三个输入:公司、职位和导航(搜索公司和职位)。
我知道如何实现其中之一,但不知道如何在遵循 DRY 的同时实现所有这些。 autocomplete的路由、controller和js文件应该如何设计?
这是适用于一个的代码。
var numbers = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.whitespace,
queryTokenizer: Bloodhound.tokenizers.whitespace,
remote: {
url: "autocomplete?search=%QUERY",
wildcard: "%QUERY"
}
});
// initialize the bloodhound suggestion engine
numbers.initialize();
$("#nav_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
$("#company_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
$("#position_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
我重写
$("#nav_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
$("#company_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
$("#position_search").typeahead({
items: 6,
source:numbers.ttAdapter()
});
和
var array = ["#nav_search", "#company_search", "#position_search"]
for (i = 0; i < array.length; i++) {
$(array[i]).typehead({
items: 6,
souce: numbers.ttAdapter()
});
}
如果我没记错的话,这里AJAX
是包含在内的。所以他们正在向您的后端发出 GET
请求 url /autocomplete
remote: {
url: "autocomplete?search=%QUERY",
wildcard: "%QUERY"
}
您需要检查 Rails routes.rb
文件和 rake routes
的输出,因为请求 get /autocomplete
将由特定的控制器#action 处理。您需要从 rails routing
url /autocomplete
的获取请求正在传递以下输入参数
search = %QUERY
因此您的控制器操作将能够使用这些参数。
parameters[:search]
它会响应提供自动完成json。
如果您想获得更多帮助,我们需要更多信息