ASP .NET MVC 5 Отображение записи поиска в таблице без нажатия кнопки, как только пользователь начнет вводить в поле поиска - PullRequest
0 голосов
/ 13 января 2019

Моя текущая реализация:

public ActionResult Index(string Sorting_Order, string Search_Data)
{
   var modal = _repo.GetAllResturents();
   Search_Data = Search_Data.Trim();
   if (Search_Data != null)
      modal = from r in modal where r.Name.ToUpper().Contains(Search_Data.ToUpper()) select r;
      ViewBag.SortingName = String.IsNullOrEmpty(Sorting_Order) ? "Name_Description" : "";
      ViewBag.SortingCity = String.IsNullOrEmpty(Sorting_Order) ? "City_Description" : "";

      switch (Sorting_Order)
      {
         case "Name_Description":
            modal = modal.OrderByDescending(nam => nam.Name);
            break;
         case "City_Description":
            modal = modal.OrderByDescending(cit => cit.City);
            break;
         default:
            modal = modal.OrderBy(name => name.Name);
            break;
      }
      return View(modal);
 }

Index.cshtml:

<p>
    Search Name: <input type="search" id="search_id" />
    <input type="button"  value="Find" onclick="location.href='@Url.Action("index","Resturent")?search_data=' + $('#search_id').val()" />
</p>

Мне нужен какой-то способ, чтобы я мог показывать записи из базы данных, как только пользователь начнет вводить текст в поле поиска. Возможно ли использовать автозаполнение или Ajax? и какой подход лучше для этой задачи.

Примечание. Я не ищу поиск на стороне клиента.

Ответы [ 2 ]

0 голосов
/ 13 января 2019

Самый простой способ - отправить каждый тип, который нажимается кнопкой Ajax. Вы можете сделать это, используя jquery

$("#search_id").keyup(function () {
    //call ajax method
});

Это будет отправлять ваши данные каждый раз, когда пользователь вводит новый ключ

0 голосов
/ 13 января 2019

Для этого вы можете использовать JQuery DataTable . Вот полный GitHub репозиторий использования JQuery DataTable с ASP.NET MVC

Это даст вам гораздо больше, наряду с поисковой записью в таблице, без какого-либо нажатия кнопки, как только пользователь начнет вводить в поле поиска

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...