在升級到最新的jQuery庫之前,我使用這段代碼來關閉任何打開的對話框。現在這段代碼只是拋出一個錯誤。如何關閉所有打開的JQuery對話框
$(".dialogs:ui-dialog").each(function() {
if ($(this).data('dialog').isOpen()) {
$(this).dialog('close');
};
});
我需要做到的是,當一個jQuery對話框打開,用戶點擊菜單項打開另一個對話框,我需要確保新一打開之前所有其它對話框關閉。
什麼是用於完成此任務的新代碼?
爲什麼你不能直接使用'$(「.dialogs」).dialog(「close」);'?如果對話框沒有打開,我想關閉不會做任何事情。 –
我無法想象這些代碼用於工作(我不認爲這就是API暴露的「isOpen」)。看起來你應該使用它的方式是:'$(「.selector」).dialog(「isOpen」)' – Ian
@ClaudioRedi我同意 - 但我想知道是否仍然觸發每個元素的close事件(open或者不會),這可能會影響其他東西 – Ian