0

ボタンをクリックすると、オートコンプリート リスト全体が表示されます。以下のコードを試しましたが、うまくいきません。

 $("#<%= btnCompanyList.ClientID%>").live('click', function (e) {
        alert("hi");
        $("#txtDefaultCompany").autocomplete({
                    source: function (request, response) {
                        $.ajax({
                            url: "AutoComplete.asmx/GetCompanyname",
                            data: "{'prefixText':" + JSON.stringify(request.term) + "}",
                            dataType: "json",
                            type: "POST",
                            contentType: "application/json; charset=utf-8",
                            dataFilter: function (data) { return data; },
                            success: function (data) {
                                alert(data.d);
                                response($.map(data.d, function (item) {
                                    return {
                                        label: item.company_name,
                                        value: item.company_branch
                                    }
                                }))
                            }
                        });
                    },
                    minLength:0

                });

    });

ボタンをクリックすると、テキストボックスが空になることがあります。しかし、私はリスト全体を表示したい。アイデアや提案をお願いします。

ありがとう、

4

2 に答える 2

0

doco に従って、オートコンプリート オブジェクトで .search を呼び出す必要があります。

お役に立てれば...

于 2012-05-09T16:12:17.590 に答える
0

単純、

ここに例があります:jsfiddleで

ただし、ajax 呼び出しで使用する場合は、次の ajax "success:" 関数を追加するだけです。

$(yourtxt).autocomplete({
    source: JSON.parse(resultData),
    minLength: 0
}).on("focus", function () {
    $(this).autocomplete("search", '');
});

// set product combobox source
$(yourtxt).autocomplete('search', '');
于 2015-12-24T19:05:46.500 に答える