4

ここにあるjquery mobile に Andy Matthews autocomplete を使用しようとしています。私のクライアント サービスには、パラメーターを使用するメソッドがあります。パラメータを受け入れるようにクライアント側の呼び出しを変更する方法がわかりません。

これが私のクライアント側の呼び出しです:

  //WHERE DO I PUT INPUT PARAMETERS??

   $("#searchBox").autocomplete({
                method: 'POST',
                target: $('#suggestions'),
                source: "ClientService.svc/REST/GetStates",
                link: 'target.html?term=',
                minLength: 1

            });

これが私のサービスです:

   [OperationContract]
        [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest, ResponseFormat = WebMessageFormat.Json)]
        public List<string> GetStates(string y)
        {
            List<string> x= GetData(y);
            return x;

        }
4

1 に答える 1

3

ソースコードを確認したところ、プラグインではカスタムPOSTパラメータの受け渡しが許可されていないようです。ボックスにユーザーが入力した内容は、というパラメーターで送信されますtermが、サービスを変更できない場合は、コードの次の部分を変更します。

...
} else {
$.ajax({
    type: settings.method,
    url: settings.source,
    // Change the following line
    // data: { term: text },
    // for:
    data: { y: text },
...

$.ajaxプラグイン全体で呼び出しが1つしかないため、見つけるのは非常に簡単です。

于 2012-11-14T17:20:05.160 に答える