Javascript 自动完成选择项中的未捕获错误
我正在从javascript autocomplete获取自动完成项目列表,但当我当时选择该自动完成项目列表时,它会显示错误,即未捕获类型错误:n.item未定义 这是我的密码Javascript 自动完成选择项中的未捕获错误,javascript,html,ajax,asp.net-mvc,autocomplete,Javascript,Html,Ajax,Asp.net Mvc,Autocomplete,我正在从javascript autocomplete获取自动完成项目列表,但当我当时选择该自动完成项目列表时,它会显示错误,即未捕获类型错误:n.item未定义 这是我的密码 <div class="form-group"> <div class="col-md-3"> <nop-label asp-for="Name" /> </div> <
<div class="form-group">
<div class="col-md-3">
<nop-label asp-for="Name" />
</div>
<div class="col-md-9">
@Html.TextBoxFor(model => Model.Name, new { @class = "form-control" })
@Html.HiddenFor(model => Model.Name)
</div>
</div>
$(document).ready(function () {
$("#Name").autocomplete({
source: function (request, response) {
$.ajax({
url: '@Url.Action("AutoComplete", "Product")',
datatype: "json",
data: {
term: request.term
},
success: function (data) {
response($.map(data, function (val) {
return {
label: val.Name,
value: val.Name
}
}))
}
})
},
select: function (ui) {
$("#Name").val(ui.item.Name);
}
});
});
您的选择签名不正确:
select: function (ui) {
$("#Name").val(ui.item.Name);
}
将其更改为:
select: function (event, ui) {
$("#Name").val(ui.item.Name);
}
这应该很好。你的自动完成插件是什么?如果您从服务器端获得的结果正常,那么问题就在客户端,了解正确的插件将有助于解决问题
select: function (event, ui) {
$("#Name").val(ui.item.Name);
}