我正在 mvc 平台上使用 jquery自动完成。现在,我的问题是,在某些文本框中,数据自动完成工作正常,而在某些文本框中,数据自动完成工作正常。
为更清晰,让我们看一下自动完成任务的图像
现在按照图像,当我写 R 字时,我得到了与相关的 R 字的建议列表。
现在,根据第二张图片,我已经写了整个单词,但仍然没有显示建议。
这是我的代码,
查看
<input type="text" id="CustomerName" name="CustomerName" required data-provide="typeahead" class="typeahead search-query form-control autocomplete"
placeholder="Customer Name" />
<script>
$(document).ready(function () {
$.ajax({
url: "/ServiceJob/CustomerSerchAutoComplete",
method: "GET",
dataType: "json",
minLength: 2,
multiple: true,
success: function (data) {
/*initiate the autocomplete function on the "myInput" element, and pass along the countries array as possible autocomplete values:*/
//autocomplete(document.getElementById("CustomerName"), data.data);
$('#CustomerName').autocomplete({ source: data.data, minLength: 2, multiple: true });
}
});
});
</script>
控制器
[HttpGet]
public IActionResult CustomerSerchAutoComplete()
{
var customers = _Db.Ledger.Where(x => x.LedgerTypeId == (int)LedgerType.Customer).ToList();
var result = (from n in customers
select new
{
kk = n.Name.ToUpper()
}).ToList();
return Json(new { data = result });
}
答案 0 :(得分:0)
随着您的获得
未捕获的TypeError:无法读取未定义的属性'substr'
对于此错误,您应检查data
是否不为空。
success: function (data) {
if(data != null)
{
autocomplete(document.getElementById("CustomerName"), data.data);
}
}