【发布时间】:2011-11-24 09:09:20
【问题描述】:
我需要创建一个自动完成文本框来填充 ASP.Net MVC 应用程序中的客户姓名。我认为的jQuery代码如下:
$(document).ready(function() {
$("input#bldCustomerName").autocomplete({
source: '<%= Url.Action("ListCustomers","Build") %>'
});
});
我的控制器动作是:
public ActionResult ListCustomers(string term)
{
IList<HSTrader> lstTraders = new List<HSTrader>();
Build objBld = new Build();
string trdrType = Resources.Resource.TraderTypeCustomer;
int trdrTypeId = objBld.GetTraderTypeByTraderTypeName(trdrType).Id;
lstTraders = objBld.GetTradersByTraderType(trdrTypeId);
var results = from m in lstTraders
where m.TraderName.StartsWith(term)
select m.TraderName; //new { label = m.TraderName, id = m.Id };
return Json(results.ToArray(), JsonRequestBehavior.AllowGet);
}
在keypress 上,控制器动作被执行,但列表不会出现在文本框下方。我的实现有什么问题?
【问题讨论】:
-
您是否在控制台/萤火虫中遇到任何错误?
-
哦,抱歉,这是区分大小写的情况。它给出了正确的结果。
-
您可能需要考虑自动完成帮助表单awesome.codeplex.com
标签: jquery asp.net-mvc jquery-ui jquery-ui-autocomplete