2013-02-12 21 views
0

我在我的crm 2011應用程序中使用JQuery-Ui。 我使用jQuery的UI對話框來顯示列表,但是當列表太長時,我想要一個垂直滾動條出現。現在這個列表超出了表單的長度。 我試圖設置對話框的最大高度,但沒有發生任何事情 - 也許我沒有這樣做的正確方式..(我是新來的jQuery和CSS)。 我將不勝感激任何幫助,謝謝!在對話框中的Jquery-ui滾動列表

var listItemsString = ""; 

for (var i = 0; i < listItemsArray.length; i++) { 
    listItemsString += "<li class='ui-widget-content'>" + listItemsArray[i] + "</li>"; 
} 

var div = $("<div id='myListDialog' title='this is the title'><p class='validateTips'>this is the description</p>" 
       + "<form><ul id='selectable'>" + listItemsString + "</ul></form></div>"); 

$("body").prepend(div); 

$("#selectable ul").css({ "list-style-type": "none", "margin": "0", "padding": "0", "width": "60%" }); 
$("#selectable li").css({ "margin": "3px", "padding": "0.4em", "height": "14px" }); 

$("#selectable").selectable({ selected: listSelectfunction ,unselected: listUnselectfunction}); 

$("#myListDialog").dialog({ 
    height: 20, 
    modal: true, 
    autoOpen: true, 
    draggable: false, 
    resizable: false, 
    position: [350, $(window.parent.document).scrollTop() + 500/2], 
    closeOnEscape: false, 
    open: function (event, ui) { $(".ui-dialog-titlebar-close").hide(); }, 
    buttons: buttons 
}); 

回答

4

您可以設置對話框中的任何東西有一個最大高度(最大高度),並使其通過設置溢流到汽車內它滾動。 看到這個小提琴:http://jsfiddle.net/582ms/1/

.child { 
    max-height:150px; 
    overflow: auto; 
    width: 150px; 
} 
+0

感謝您的回答,但我仍然無法得到它的工作。一個滾動條現在確實出現,但我仍然無法設置對話框的最大高度 - 意義 - 對話框仍然太長,但現在列表中有一個滾動條(實際上什麼也沒有做。) – ckita 2013-02-13 12:24:23

+0

我插上你的JS到一個小提琴,並給了你一些CSS,這是設置它們的最大高度(對話框div和列表)... http://jsfiddle.net/ufv5K/2/ – Brocco 2013-02-13 14:01:22