【发布时间】:2011-08-10 15:19:17
【问题描述】:
我正在实现 Jquery UI 自动完成功能。我有以下代码。
Application.js
$(function() {
function log(message) {
$( "<div/>" ).text( message ).prependTo("#log");
}
$("#tags").autocomplete({
source : function(request, response) {
$.ajax({
url : "/projectlist",
dataType : "json",
data : {
style : "full",
maxRows : 12,
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);
}
});
}
});
});
项目负责人
def project_list
list=Project.all.map{|i|i.project_name}
arr= [].concat(list.sort{|a,b| a[0]<=>b[0]}).to_json
render :json =>arr
end
_form.html.erb
<input id = "tags"/>
routes.rb
match '/projectlist' => 'projects#project_list'
我上面的代码应该做的是,列出项目。但是我在萤火虫中遇到了以下错误。
$("#tags").autocomplete is not a function
[Break On This Error] source : function(request, response) {
我也尝试按照示例JQuery Ui Autocomplete 进行操作,但没有运气并得到相同的错误:S
【问题讨论】:
-
一般是没有加载jquery ui js文件的结果。确保已加载 jquery core 和 jquery ui js 文件。
-
你的 html 中是否包含 jQuery-UI?
-
我的 _form.html
<%= javascript_include_tag 'jquery', 'jquery-ui-1.8.14.custom.min' %>中有以下内容,但仍然收到相同的错误 -
也许您没有最新版本的 jquery?我更新了我的版本,它开始按预期工作。
标签: jquery ruby-on-rails ruby-on-rails-3 jquery-ui jquery-ui-autocomplete