jquery autocomplete keypress数据库

时间:2009-06-18 10:44:00

标签: jquery plugins autocomplete

我正在尝试使用jquery自动完成插件,我希望它将ItemCodes建议为用户类型......

问题是它没有显示自动完成框/框架/....

为了确保webmethod返回每个keyup事件的数据,我将数据分配给div元素,并且它可以正常工作。

<script language="javascript" type="text/javascript">
    $(document).ready(function() {
        var strItmCodes;

        $("#txtItmCode").keyup(function() {
            var search;
            search = $("#txtItmCode").val();

            if (search.length > 0) {
                $.ajax({
                    type: "POST",
                    url: "Journal.aspx/loadData",
                    contentType: "application/json; charset=utf-8",
                    data: "{'Like':'" + $('#txtItmCode').val() + "'}",
                    dataType: "json",
                    success: function(retval) {
                        strItmCodes = retval.d.split("|");

                        $("#txtItmCode").autocomplete(strItmCodes);
                        $("#suggest").html(retval.d); //elemet 'suggest' is a div
                    }
                });
            }
        });
    });
</script>

修饰

<script language="javascript" type="text/javascript">
    $(document).ready(function() {
        //$("#txtItmCode").autocomplete({url: "Journal.aspx/loadData" });

        $("#txtItmCode").keyup(function() {
            $("#txtItmCode").autocomplete({url: "Journal.aspx/loadData" });
        });
    });
</script>

1 个答案:

答案 0 :(得分:1)

我认为您应该在第一次按键之前启用自动完成插件,然后该插件将添加事件处理程序。

假设您使用原始的autocomplete插件:

$("#txtItmCode").autocomplete({url: "Journal.aspx/loadData"});

并确保您的服务可以回复插件格式化的GET请求。