尝试在自动完成显示在轨道上
显示由“术语”过滤列表,使用自动完成在Ruby变种我有一个使用jQuery UI的自动完成功能的轨道3应用程序。我已经达到了可以搜索用户列表的地步。但是,当我键入指定用户的前几个字母时,出现整个列表(不知道这是否是我的Javascript或控制器内的project_list的问题),只有一个用户应该出现。但我不希望它这样做。从我的理解,我必须采取无功条件,并过滤我的清单,但我不知道该怎么做,下面的代码。
用户controller.rb
def project_list
list=User.all.map{|i|i.full_name}
arr= [].concat(list.sort{|a,b| a[0]<=>b[0]}).to_json
render :json =>arr
end
的application.js
$("#tags").autocomplete({
minLength: 2,
source: function(request, response) {
$.ajax({
url: "/managerlist",
dataType: "json",
data: {
term: request.term
},
success: function(data) {
var results = [];
$.each(data, function(i, item) {
var itemToAdd = {
value: item,
label: item
};
results.push(itemToAdd);
});
return response(results);
}
});
}
});
}
如何传递一个参数并完成所有这些?我在这方面没有任何经验 – ahmet
我建议你看看这个在rails3应用程序中非常棒的gem。 [https://github.com/crowdint/rails3-jquery-autocomplete](https://github.com/crowdint/rails3-jquery-autocomplete) –