Javascript 如何在Jquery自动完成对话框中进行选择?

Javascript 如何在Jquery自动完成对话框中进行选择?,javascript,jquery,autocomplete,Javascript,Jquery,Autocomplete,我试图在Jquery自动完成对话框中创建一个选择字段。当此html元素可见时,对话框会阻止用户单击它。关于如何覆盖单个元素的默认行为,有什么提示吗 或者,是否可以让菜单小部件这样的东西在自动完成字段中工作,这样我就可以进行多层选择 这是我尝试做的代码剪贴画: <html> <head> <link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.cs

我试图在Jquery自动完成对话框中创建一个选择字段。当此html元素可见时,对话框会阻止用户单击它。关于如何覆盖单个元素的默认行为,有什么提示吗

或者,是否可以让菜单小部件这样的东西在自动完成字段中工作,这样我就可以进行多层选择

这是我尝试做的代码剪贴画:

<html>
<head>
    <link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
    <link rel="stylesheet" href="https://resources/demos/style.css">
    <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

    <script>

    $.widget( "custom.catcomplete", $.ui.autocomplete, {
        _create: function() {
            this._super();
            this.widget().menu( "option", "items", "> :not(.ui-autocomplete-category)" );
        },
        _renderItem: function( ul, item ) {
                return $( "<li></li>" )
                .data( "item.autocomplete", item )
                .append( "<a>" + item.label +"</a>" )
                .appendTo( ul );
        },
        _renderMenu: function( ul, items ) {
            var that = this,
            currentCategory = "";
            ul.prepend('Please Select <select name="number" id="number"> <option>1</option> <option selected="selected">2</option> <option>3</option> </select>');
            $.each( items, function( index, item ) {
                var li;
                if ( item.category != currentCategory ) {
                    ul.append( "<br><li class='ui-autocomplete-category'><b>" + item.category + "</b></li>" );
                    currentCategory = item.category;
                }
                li = that._renderItemData( ul, item );
                if ( item.category ) {
                    li.attr( "aria-label", item.category + " : " + item.label );
                }
            });
        }
    });

    $( function()
    {   var availableTags = [{label:"Apple",category:"Red"},{label:"Strawberry",category:"Red"},{label:"Coconut",category:"Brown"},];
        $( "#tags" ).catcomplete(
        {   source: availableTags
        });
    });
    </script>
</head>
<body>

<div class="ui-widget">
Fruits: <input id="tags">
</div>

</body>
</html>

$.widget(“custom.catcomplete”,$.ui.autocomplete{
_创建:函数(){
这个;
this.widget()菜单(“选项”,“项目”,“>:非(.ui自动完成类别)”);
},
_renderItem:功能(ul,项目){
返回$(“
  • ”) .data(“item.autocomplete”,item) .append(“+item.label+”) .附录(ul); }, _renderMenu:功能(ul,项目){ var=这个, currentCategory=“”; ul.prepend('请选择1 2 3'); $。每个(项目、功能(索引、项目){ 李华; 如果(item.category!=当前类别){ ul.追加(“
  • ”+item.category+“
  • ”); currentCategory=item.category; } li=该值。_renderItemData(ul,项目); if(item.category){ li.attr(“aria标签”,item.category+”:“+item.label); } }); } }); $(函数() {var availableTags=[{标签:“苹果”,类别:“红色”},{标签:“草莓”,类别:“红色”},{标签:“椰子”,类别:“棕色”},]; $(“#标记”).catcomplete( {来源:availableTags }); }); 水果:
    您不能使用select2吗。。。去学习吧…谢谢你的建议。选择2种作品(带有一些图形艺术品)。但是,一旦您单击该选择上的任何元素,它就会关闭我不想要的自动完成。该工作流将能够选择一个选项,而不是自动完成中的常规选择。