2010-10-21 45 views
2

我試圖使用jQuery對話框進行多次對話的系統中一個網頁...jQuery的對話框打開多個窗口

功能看起來像......

function open_w(id){ 

     $('.opened').dialog('close'); 
     $(id).addClass('opened'); 
     $(id).dialog({position: 'center', modal:true, width: '750px' }); 
      }; 


    function close_w(){ 
    $('.opened').dialog('close'); 
    $('.opened').removeClass('opened'); 
     }; 

正如你看到的傳遞ID打開我的窗戶,但在打開之前關閉我舊窗戶..當我打開它的拳頭時間一切都很好..但下一次它不想打開

哪裏錯了?

回答

1

這是因爲你想重新創建對話框,而不是每次都:

$(id).dialog({position: 'center', modal:true, width: '750px' }); 

你需要調用open(在已經創建對話框),像這樣:

$(id).dialog('open'); 

例如:

function open_w(id){ 
    close_w(); 
    $(id).addClass('opened') 
     .dialog({position: 'center', modal:true, width: '750px' }) 
     .dialog('open'); 
} 
function close_w() { 
    $('.opened').dialog('close').removeClass('opened'); 
}