【发布时间】:2013-12-11 03:20:27
【问题描述】:
我环顾四周,找不到问题的答案。我没有太多使用 jquery UI,但我正在尝试使用此博客条目 jQuery UI Autocomplete with JSON in MVC 4 作为指南来实现自动完成,因为它实际上与我需要的相同。我可能遗漏了一些“明显”的东西,因为我还不了解自动完成语法的所有部分。
问题:我可以让下拉建议出现。但是一旦它发生,我就会得到一个
Uncaught TypeError: Property 'results' of object #<Object> is not a
function
控制台出错。 此外,尽管出现了建议,但我无法选择其中任何一个。我一尝试,列表就会消失。尽管那可能完全是另一回事。
jqueryUI1.9.2代码中错误的位置是这个sn -p的最后一行:
__response: function( content ) {
var message;
this._superApply( arguments );
if ( this.options.disabled || this.cancelSearch ) {
return;
}
if ( content && content.length ) {
message = this.options.messages.results( content.length );
我的 jquery 看起来像这样:
$("#FastCategory").autocomplete({
source: function (request, response) {
$.ajax({
url: "/Quiz/GetCategory",
type: "POST",
dataType: "json",
data: { term: request.term },
success: function (data) {
console.log("data=",data);
response($.map(data, function (item) {
console.log("item=",item,item.Description);
return { label: item.Description, value: item.Description };
}))
}
})
},
messages: {
noResults: "", results: ""
}
});
我的控制器如下所示:
public JsonResult GetCategory(string term)
{
var result = (from r in db.QuizCategories
where r.Description.ToLower().Contains(term.ToLower())
select new { r.Description }).Distinct();
return Json(result, JsonRequestBehavior.AllowGet);
}
知道我哪里出错了吗?
【问题讨论】:
标签: jquery json jquery-ui asp.net-mvc-4 autocomplete