Z-index in jQuery dialog. Autosuggest list not displayed properly

前端 未结 4 1974
囚心锁ツ
囚心锁ツ 2021-01-15 03:08

I have a problem displaying the autosuggest box inside a jQuery dialog. The auto suggest list is displayed under the dialog no matter what. I have tried setting up the z-ind

相关标签:
4条回答
  • 2021-01-15 03:29

    It should work as I tested that in jsfiddle link you provided:

    div.as-results{position:relative;z-index:1;}
    div.as-results ul.as-list {
        position: fixed;
        list-style-type: none;
        margin: 2px 0 0 0;
        padding: 0;
        font-size: 14px;
        color: #000;
        font-family: "Lucida Grande", arial, sans-serif;
        background-color: #fff;
        background-color: rgba(255,255,255,0.95);
        box-shadow: 0 2px 12px #222;
        -webkit-box-shadow: 0 2px 12px #222;
        -moz-box-shadow: 0 2px 12px #222;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        z-index:6000;
    }
    
    0 讨论(0)
  • 2021-01-15 03:31

    This may do it:

    ul.as-list {
        position: fixed;
        /*...*/
    }
    
    0 讨论(0)
  • 2021-01-15 03:32

    The root cause is that the outermost two elements have overflow: hidden.

    The simplest way to fix that is:

    .ui-dialog, .ui-dialog-content {
        overflow: visible !important
    }
    

    If you're not happy with using !important (it's not good practise), you can find the place where overflow: hidden is actually being applied, and fix it there.

    Quick fix version: http://jsfiddle.net/mNQVr/ (tested in Chrome, Firefox, IE)

    0 讨论(0)
  • 2021-01-15 03:40

    This is what you can do:

    $("#txtTagAdd").autoSuggest(data.items, {
                            asHtmlID:"tagg",
                            selectedItemProp: "name",
                            searchObjProps: "name",
                            selectionLimit:4,
                            limitText: "Only 4 tags unique tags allowed for each suggestion",
                 resultsComplete: function(){
                     var h = $('ul.as-list').innerHeight() + 20;
                     $('div.as-results').css({"height": h + "px"});
                 }
    });
    
    0 讨论(0)
提交回复
热议问题