2010-11-01 35 views

回答

1

如果您使用的是jquery-ui對話框,您應該可以使用類似於$(「。selectorClass」)。dialog(「destroy」)的對象將所有對話框重置爲其原始(隱藏)狀態。 (並確保投入,當然你自己的選擇器類/ ID!)

欲瞭解更多信息,請http://jqueryui.com/demos/dialog/

1

假設你不想實際上限制用戶打開多個能力對話框,讓每個對話框模態(所以他們不能點擊頁面上的任何位置,直到對話框被故意關閉),我會說你想要將對話框緩存在一個變量中,然後遍歷這個數組來關閉它們,然後打開目標。未經測試什麼,我這裏寫,嘗試一些沿着這些路線:

var options = { 
    autoOpen: false, 
    modal: true, 
    ... 
}; 

var dlg = $('dialog-candidate-' + n); 

$(dlg).each(function(i) { 
    $(this).dialog(options); 
    $('#dialog-trigger-' + n).click(function() { 
     for(var i = 0; i<= dlg.length; i++) { 
      dlg[0].dialog("close"); 
     } 
     $(this).dialog("open"); 
     return false; 
    }); 
    n++; 
}); 
8

所有對話框獲得ui-dialog-content類添加,所以你可以做到這一點打開你的對話框時:

$(".ui-dialog-content").dialog("close"); 
$("#myDialog").dialog("open"); 
相關問題