Как отфильтровать род занятий при вводе в MVC3 - PullRequest
5 голосов
/ 11 октября 2011

У меня есть список из 2500 занятий, проводимых в нашей базе данных.На нашем сайте мы просим вас указать свою профессию, и я хотел бы, чтобы она фильтровала результаты по мере их ввода;нравится поиск Play.com.Есть ли способ сделать это в MVC3?

Оцените любую помощь.

Ответы [ 2 ]

3 голосов
/ 11 октября 2011

Вы можете сделать это, используя автозаполнение JavaScript.

Например: http://www.pnpguidance.net/post/jQueryAutoCompleteASPNETMVCFramework.aspx

Вы можете получить свои данные с помощью jQuery Ajax.

0 голосов
/ 11 октября 2011

Я бы создал метод действия, который бы возвращал JSON:

        [HttpGet()]
        public JsonResult Occupations(String searchCriteria)
        {
            String[] occupations = new String[] { "Lawyer", "Carpenter" };
            return Json(occupations.Where(s => s.Contains(searchCriteria))
                                   .ToList(), JsonRequestBehavior.AllowGet);
        }

Если вы выполните запрос GET по этой ссылке: / Occupations? SearchCriteria = Carpenter, вы получите ["Carpenter"] вответ.

Я бы сделал вызов jQuery ajax для этого метода действия.В случае успеха я бы взял ответ и сгенерировал вывод, такой как список элементов li для выбора.

Ниже приведен пример запроса get ajax json:

  $.ajax({
            type: 'json',
            url: '/Occupations',
            type: 'GET',
            cache: false,
            data: { searchCriteria: searchCriteria},
            error: function () {

            },
            success: function (result) {               
                alert(result);
            }
        });

Это изБлокнот, поэтому могут быть небольшие синтаксические ошибки.

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