如何解决选择显示Ajax自动完成中未定义的部分
我完美地获得了名称,但是我没有在 ajax自动完成
中获得了与他们名称相关的ID >以下是查看代码,
@Html.TextBoxFor(model => Model.CustomerFullName,new { @class = "form-control" })
@Html.TextAreaFor(model => Model.CustomerId)
$(document).ready(function () {
$("#CustomerFullName").autocomplete({
source: function (request,response) {
$.ajax({
url: '@Url.Action("AutoComplete","Order")',datatype: "json",data: {
term: request.term
},success: function (data) {
response($.map(data,function (val) {
return {
value: val.Name,label: val.Name
}
}))
}
})
},select: function (event,ui) {
alert(ui.item.id);
$("#CustomerId").val(ui.item.id);
}
});
});
这是控制器,
public JsonResult AutoComplete(string term = "")
{
var objCustomerlist = (from customer in _customerRepository.Table
where customer.Username.StartsWith(term)
select new
{
Name = customer.Username,ID = customer.Id
}).ToList();
return Json(objCustomerlist);
}
在自动完成的ajax中,选择区域警报显示未定义
我试图解决类似问题
- JSON.Stringfy(ui.item.id)
- ui.id
但仍然无法正常工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。