【问题标题】:How to make my select autocomplete?如何让我的选择自动完成?
【发布时间】:2016-06-28 08:44:32
【问题描述】:

我有这个填充选择列表的功能

 function filldropdownlistDemandUnitsEmployee(res) {
            var select = document.getElementById("#drpRequestDemandUnit");
            $("#drpRequestDemandUnit").empty();
            $('#drpRequestDemandUnit').append($("<option></option>").attr("value", -1).text('الكل'));
            if (res != null) {
                var test = $.parseJSON(res.d);

                $(test).each(function () {
                    var option = $('<option />');
                    option.attr('value', this.UserId).text(this.NameAr);
                    $("#drpRequestDemandUnit").append(option);
                });
            }
            var valuee = $("#drpRequestDemandUnit").val();

            $("#<%= hiddenFieldDemandEmployeeID.ClientID %>").val(valuee);
        }

我需要让它支持自动完成 我试试这个

 $("#drpRequestDemandUnit").autocomplete({

             select: function (event, ui) {
                 $("#drpRequestDemandUnit").val(ui.item.text);
                               return false;
             }
         }); 

但我一无所获,因为我不知道如何获取源代码

请帮忙

【问题讨论】:

    标签: jquery html jquery-ui select autocomplete


    【解决方案1】:

    我认为您做错了,如果您希望选择框转换为自动完成,请按照此example here,否则通常自动完成是在文本框上完成的,这是您的操作方法,单击运行并输入要验证的文本框

     function loadList(res) {
       var options = ['الكل'];
       if (res != null) {
         var test = $.parseJSON(res.d);
    
         $(test).each(function(i, d) {
           options.push(d);
         });
       }
       return options;
     }
    
     var myList = loadList({
       d: '[ "ActionScript", "AppleScript", "Asp", "BASIC", "C", "C++", "Clojure", "COBOL", "ColdFusion", "Erlang", "Fortran", "Groovy", "Haskell", "Java", "JavaScript", "Lisp", "Perl", "PHP", "Python", "Ruby", "Scala", "Scheme" ]'
     });
    
     $("#auto").autocomplete({
       source: function(request, response) {
         console.log(myList);
         response(myList.filter(function(l) {
           return l.toLowerCase().indexOf(request.term.toLowerCase()) === 0;
         }));
       }
     });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.css" rel="stylesheet" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.js"></script>
    
    <input type="text" id="auto" value="" />

    【讨论】:

    • 如何处理写在问题正文中的代码?因为我有一个动态列表而不是静态列表
    • 我已经更新了我的答案,以尽可能接近您的要求
    猜你喜欢
    • 2014-03-21
    • 2019-10-24
    • 2020-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-02
    • 1970-01-01
    • 2012-11-19
    相关资源
    最近更新 更多