按钮上的自动完成单击jquery

时间:2012-05-09 09:39:42

标签: jquery jquery-autocomplete

我想在点击按钮时显示整个自动完成列表。我已经尝试了以下代码,但它无法正常工作。

 $("#<%= 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

                });

    });

在按钮上单击文本框可能为空。但我想显示整个列表。 任何想法或建议请。

谢谢,

2 个答案:

答案 0 :(得分:0)

您需要在自动填充对象as per the doco

上调用.search

希望这会有所帮助......

答案 1 :(得分:0)

简单,

您在此处有一个示例:on 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', '');