автозаполнение JSON - PullRequest
       28

автозаполнение JSON

0 голосов
/ 10 декабря 2011

Я следую следующей волне для autocomplete и datepicker, но автозаполнение не может работать. Во-вторых, есть ли razor syntaxчтобы отобразить дату и автозаполнениеКонтроллер Json

public ActionResult AutoComplete(String s)
        {
            var d = db.Cities
                .Where(r => r.Name.Contains(s))
                .Select(r => new { label = r.Name });            
            return Json(d, JsonRequestBehavior.AllowGet);
        }

1 Ответ

1 голос
/ 11 декабря 2011
@Url.Action("AutoComplete", "City", "City") 

должно быть

@Url.Action("AutoComplete", "City")

Третий используемый аргумент представляет значения маршрута, которые должны быть анонимным объектом, а не строкой. Что касается плагина автозаполнения, он использует строку запроса term при выполнении запроса AJAX для извлечения данных. Поэтому вам также придется переименовать ваш параметр действия контроллера:

public ActionResult AutoComplete(string term)
{
    var d = db.Cities
              .Where(r => r.Name.Contains(term))
              .Select(r => new { label = r.Name });            
    return Json(d, JsonRequestBehavior.AllowGet);
}

Также убедитесь, что на вашей странице есть ссылка на скрипт jquery-ui-1.8.11.min.js (его не видно в примере кода).

Если это все еще не работает, убедитесь, что действие AutoComplete не вызывает исключение при выполнении запроса. Также посмотрите с помощью FireBug или Developer Tools, нет ли каких-либо ошибок javascript и правильно ли отправлен AJAX-запрос.

...