Автозаполнение jQuery с помощью WCF Data Services - PullRequest
0 голосов
/ 11 января 2011

Я планирую использовать плагин jQuery Autocomplete (Not UI Autocomplete) для извлечения данных из службы данных WCF. Если я хочу получить все данные, я могу сделать это путем непосредственного запуска запроса. Однако, если я хочу получить данные на основе введенных начальных символов, я не могу передать это значение службе данных. Мой код автозаполнения выглядит как

('#txtUsers')
    .autocomplete("http://localhost/DataService/DataService.svc/Users?$format=json", {
        width: 320,
        max: 10,
        minChars: 3,
        matchSubset: true,
        cacheLength: 100,
        extraParams: { "$filter" : "startswith(Name, '"+$(this).val()+"')" },
        formatItem: function(data, i, n, value, term) {
            return value;
        },
        parse: function(data) {
            return $.map(data.d, function(row, i) {
                return {
                    data: row,
                    value: row,
                    result: row
                }
            });
        }
    })

Я тоже пытался передать его с помощью extraParams, но он содержит пустое значение. Как я могу использовать автозаполнение с WCF Data Services? Я не хочу добавлять какие-либо QueryInterceptors, поскольку мои службы данных используются и другими приложениями.

1 Ответ

0 голосов
/ 11 января 2011

Хорошо.Проблема решена.Я настроил параметр extraParams на

extraParams: {
    "$filter": function() { return "startswith(Name, '" + $('#txtUsers').val() + "')" }
}

Надеюсь, это может быть полезным для других.

...