Я новичок в asp.net и пытаюсь добавить строку поиска с автозаполнением.
Я хочу, чтобы результат возвращал список объектов, результат хранимой процедуры в двух таблицах сболее 200 000 строк каждая (30 лучших результатов для автозаполнения), с 2 полями: метка (Resultat) и Id (IdRes).
Мне удалось вызвать свою функцию, я получил свой результат, ноавтозаполнение всплывающее окно не показывает или неправильно.
Вот код моего _layout.cshtml
:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - CLAP : le colloque du cinéma</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/jqueryui")
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/smoothness/jquery-ui.css" rel="stylesheet" />
<script src="Scripts/jquery-3.3.1.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#navinput").autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Home/RechercheAutoComplete",
data: "{'term':'" + $("#navinput").val() + "'}",
datatype: "json",
success: function (data) {
response($.map(data, function (value, key) {
return {
label: value.Resulat,
value: value.Resulat
}
}));
},
error: function (result) {
alert("Error");
}
});
}
});
});
</script>
</head>
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-collapse collapse">
...
<div class="navbar-form navbar-left" role="search">
<div class="formgroup">
<input class="form-control" id="navinput" name="navinput" runat="server" type="text" width="512" placeholder="Search..." />
<button class="btn btn-default glyphicon glyphicon-search" id="navsearchbtn" runat="server" OnClick="navSearch" type="submit" />
</div>
</div>
...
</div>
</div>
</div>
<div class="container body-content">
@RenderBody()
</div>
<div class="footer">
<p>© @DateTime.Now.Year - CLAP</p>
</div>
@RenderSection("scripts", required: false)
</body>
</html>
Итак, с этим кодом, он показывает мне всплывающее меню вв левом верхнем углу браузера, вместо моего текстового поля, и вместо Resultat отображается ResId.
Что я делаю не так и как это исправить?Я хочу, чтобы пользователь выбрал метку, но вернул идентификатор.