Jquery Автозаполнение - PullRequest
       11

Jquery Автозаполнение

1 голос
/ 11 декабря 2010

Я использую автозаполнение jquery в проекте asp.net.это не работает.у тебя есть идеи.код приведен ниже.

<script type="text/javascript">
$(function () {

    $('#clientabbrev').val("");

    $("#clientstate").autocomplete({
        source: "clientstates.aspx",
        select: function (event, ui) {
            $('#clientstateid').val(ui.item.clientid);
            $('#clientstateabbrev').val(ui.item.clientabbrev);
        }
    });

    $("#clientstate_abbrev").autocomplete({
        source: "clientstatesabbrev.aspx",
        minLength: 2
    });
});
</script>

проблема в том, что states.aspx возвращает данные, но они не отображаются в элементе управления автозаполнением jquery.

1 Ответ

1 голос
/ 11 декабря 2010

Ваш сервер должен возвращать сериализованный массив JSON объектов со свойствами id, label и value. Например. :

[{"id": "1", "label": "Mike Smith", "value": "Mike Smith"}, {"id": "2", "label": "Bruce Wayne", "значение": "Брюс Уэйн"}]

Можете ли вы подтвердить с помощью firebug или Fiddler, что ваш сервер возвращает правильный ответ?

Если у вас возникли проблемы с сериализацией данных в C #, вы можете попробовать использовать JavaScriptSerializer следующим образом:

var result = from u in users
             select new {
               id = u.Id,
               value = u.Name,
               label = u.Name
             };

JavaScriptSerialier serializer = new JavaScriptSerializer();
var json = serializer.Serialize(result);
// now return json in your response
...