【发布时间】:2016-01-22 09:03:49
【问题描述】:
这是我第一次尝试使用 jQuery 自动完成功能,我觉得我已经完成了大部分工作,但是自动完成功能不起作用。
我正在使用带有 data-autocomplete-url 的 textarea 将输入传递给我的控制器操作:
<textarea id="assign-to" rows="1" data-autocomplete-url="@Url.Action("AutoCompleteUsername")"></textarea>
这是什么应该允许自动完成工作?:
$(document).ready(function () {
$("*[data-autocomplete-url]")
.each(function() {
$(this).autocomplete({
source: $(this).data("autocomplete-url")
});
});
});
控制器动作:
public ActionResult AutoCompleteUsername(string term)
{
using (var entity = new TestEntities())
{
var users = entity.uspSearchUserByName(term).ToList();
return Json(users, JsonRequestBehavior.AllowGet);
}
}
输入被 POST 到控制器操作,并通过我的存储过程进行过滤。对我来说,断开连接是自动完成的数据实际上是如何返回到文本区域的。现在看来我只是将数据返回到任何地方。
在用户中,会同时返回用户名和 ID。我不确定如何设置自动完成的值和标签。
感谢您的帮助
【问题讨论】:
标签: c# jquery asp.net-mvc jquery-ui autocomplete