Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery自动完成按键数据库_Jquery_Plugins_Autocomplete - Fatal编程技术网

jquery自动完成按键数据库

jquery自动完成按键数据库,jquery,plugins,autocomplete,Jquery,Plugins,Autocomplete,我正在尝试使用jquery自动完成插件,我想让它建议作为用户类型的项目代码 问题是它没有显示自动完成框/帧/ 为了确保webmethod在每个keyup事件上都返回数据,我将数据分配给一个div元素,它可以正常工作 <script language="javascript" type="text/javascript"> $(document).ready(function() { var strItmCodes; $("#txtItmCod

我正在尝试使用jquery自动完成插件,我想让它建议作为用户类型的项目代码

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

为了确保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>

$(文档).ready(函数(){
var码;
$(“#txtItmCode”).keyup(函数(){
var搜索;
搜索=$(“#txtItmCode”).val();
如果(search.length>0){
$.ajax({
类型:“POST”,
url:“Journal.aspx/loadData”,
contentType:“应用程序/json;字符集=utf-8”,
数据:“{'Like':'”+$('#txtItmCode').val()+“}”,
数据类型:“json”,
成功:函数(retval){
stritmcode=retval.d.split(“|”);
$(“#txtItmCode”).autocomplete(stritmcode);
$(“#suggest”).html(retval.d);//elemet'suggest'是一个div
}
});
}
});
});
修改

<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>

$(文档).ready(函数(){
//$(“#txtItmCode”).autocomplete({url:Journal.aspx/loadData});
$(“#txtItmCode”).keyup(函数(){
$(“#txtItmCode”).autocomplete({url:Journal.aspx/loadData});
});
});

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

假设您使用原始插件:


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

感谢您回复solsson!是的,我正在使用原始的autocomplete pugin,我尝试在第一次按键之前启用autocomplete插件。var码;strItmCodes=“选择”$(“#txtItmCode”).autocomplete(stritmcode)$(“#txtItmCode”).keyup(函数(strItmCodes){…但它仍然不起作用。您还建议确保服务(Webmethod)可以回复GET请求,如何?安装Firebug或LiveHTTPHeaders以查看autocomplete插件发送的请求。在autocomplete插件中使用正确的选项参数编辑了上述帖子。不要自己添加任何事件处理程序。只需执行$(“#txtItmCode”).autocomplete(“Journal.aspx/loadData”);后端必须响应查询日志。aspx/loadData?q=[currentvalue]&limit=150×tamp=1245666452263,文本/纯文本响应,条目用换行符分隔(无json或任何内容)。Hello Solsson,许多问题1)如何使后端(sql server)响应条目用换行符分隔(无json或任何内容)。2)$(“\xtitmcode”).autocomplete({url:“Journal.aspx/loadData”});根本不起作用。
$("#txtItmCode").autocomplete({url: "Journal.aspx/loadData"});