【发布时间】:2016-02-29 14:15:36
【问题描述】:
$('#tags').autocomplete({
params: {search_type:$('#search-type').val()},
minChars: 2,
appendTo: $(".cash-collection-select"),
serviceUrl: '/admin/journals/search_roles',
onSelect: function (suggestion) {
$("#q").val(suggestion.data);
console.log(suggestion.data)
alert("You selected: ' + suggestion.value + ', ' + suggestion.data")
},
onSearchStart: function(query) {
console.log("query: "+query)
},
onSearchComplete: function (query, suggestions) {
console.log(suggestions.data)
}
});
我收到错误无法读取未定义的属性“替换”。我对 rails 操作的响应是 json 格式
suggestions = User.where("email LIKE ?","#{params[:query]}%")
message = {:query => "Unit", :suggestions => suggestions}
render :json => message
这是我的输入#tags
<input class="search-emails" type="email" id="tags" placeholder="Search by email.." />
【问题讨论】:
-
您可以发布任何可以现场测试此页面的链接吗?这将使调试更容易。
-
请编辑您的帖子并包含一些您的 Rails 将返回的示例数据。我看不到在哪里使用
.replace(),所以不清楚错误是在哪里产生的。是否涉及其他代码? -
您似乎还有许多来自 JQuery UI 的
.autocomplete()不存在的方法和选项。这方面的文档在哪里?你在用插件吗? -
@Twisty 我没有在任何地方使用 .replace(),它在 autocomplete.min.js 中
-
您遇到的错误表明正在对未定义的对象调用
.replace()。因此,它正在您的代码中的某处使用,或者您的代码中的某些内容正在将未定义的对象传递给其他内容。
标签: javascript jquery jquery-ui frontend jquery-autocomplete