首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JQuery选择的自动完成问题

JQuery选择的自动完成问题
EN

Stack Overflow用户
提问于 2020-05-18 23:50:32
回答 1查看 89关注 0票数 0

我有一个产品列表(大约18000),所以我喜欢加载其中的一些自动完成时,用户磁带S我有项目包含S

以下是我的代码

代码语言:javascript
复制
 <div class="chzn-panel">
                                <select id="nomenclature_pv_recherche" name="nomenclature_pv_recherche" data-placeholder="<?php echo  JText::_('COM_TKTRANSIT_DOSSIER_PV_NOMENCLATURE'); ?>" class="chzn-select-deselect"  style="width: 256px;">
                                    <?php 
                                        //echo JHtml::_('select.options', TkTransitHelper::getOptionsWithFieldName('nomenclature',"code",JText::_('COM_TKTRANSIT_DOSSIER_PV_NOMENCLATURE_OPTION')),'value', 'text', '');
                                        //echo JHtml::_('select.options', array(),'value', 'text', '');  
                                    ?>
                                    <option value="">- Select Option -</option>
                                </select>
                            </div>
                            <script type="text/javascript"> 
                                $("#nomenclature_pv_recherche").chosen({allow_single_deselect:true}); 
                            </script>

对于Javascript,我有这个

代码语言:javascript
复制
$("#nomenclature_pv_recherche").chosen();
        $('#nomenclature_pv_recherche input').autocomplete({
            source: function( request, response )
            {
                alert(request);
                alert(response);
                $.ajax({
                    url:  'index.php?option=com_tktransit&task=privileges_fiscaux.getNomenclatureWithString',
                    data: {nomenclature:request.term},
                    dataType: "json",
                    success: function( data )
                    {
                        $('#nomenclature_pv_recherche').empty();
                        response( $.map( data, function( item )
                        {
                            $('#nomenclature_pv_recherche').append('<option value="'+item.id+'">' + item.code + '</option>');

                        }));
                        $("#nomenclature_pv_recherche").trigger("chosen:updated");
                    }
                });
            }
        });

我不知道为什么我没有警报,没有Ajax小程序

怎么了?

Jquery 3.5.1 JqueryUI 1.12.1选择1.8.7谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-05-19 00:03:00

代码语言:javascript
复制
$("#tags")
// don't navigate away from the field on tab when selecting an item
.on("keydown", function(event) {
    if (event.keyCode === $.ui.keyCode.TAB &&
        $(this).autocomplete("instance").menu.active) {
        event.preventDefault();
    }
})
.autocomplete({
    minLength: 0,
    source: function(request, response) {
        // delegate back to autocomplete, but extract the last term
        response($.ui.autocomplete.filter(
            availableTags, extractLast(request.term)));
    },
    focus: function() {
        // prevent value inserted on focus
        return false;
    },
    select: function(event, ui) {
        var terms = split(this.value);
        // remove the current input
        terms.pop();
        // add the selected item
        terms.push(ui.item.value);
        // add placeholder to get the comma-and-space at the end
        terms.push("");
        this.value = terms.join(", ");
        return false;
    }
});

You can see DEMO

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61873621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档