2013-05-16 68 views
0

我的代碼如下:如何擺脫不必要的JQuery彈出警告框

function loadPage(url){ 
    $("#wrapper").load(url, function(){ 
     $("#wrapper").find($('a')).each(function(){ 
      $(this).on('click', function(e){ 
       loadPage($(this).attr('href')); 
       e.preventDefault(); 
      }); 
     }); 
    }); 
} 

function JQueryAlert(message,windowHeight){ 
if (!windowHeight) var windowHeight = 470; 

$("#msgdialog").remove(); 

$("body").append("<div id='msgdialog'></div>"); 

thatmsg = $("#msgdialog"); 

$("#msgdialog").dialog({ 
    resizable: false, 
    draggable: false, 
    width: 770, 
    height: windowHeight, 
    context: thatmsg, 
    modal: true, 
    autoOpen: false, 
    buttons: { 
     "Cancel" : function(){ 
      thatmsg.dialog("close"); 
     }, 
     "OK" : function(){ 
      loadPage("combat.php"); 
     } 
    } 
});  

$("#msgdialog").html(message); 
$("#msgdialog").dialog('open'); 
} 

$(document).ready(function() { JQueryAlert("HELLO!", 120); }); 

正如你可以看到這個顯示彈出警告框,並在用戶點擊OK,它加載的文件作戰。 PHP。 Combat.php只是一個純粹的PHP文件,它迴應了一些類似「Hello world!」的調試消息。

現在,我的問題是,點擊OK和combat.php加載後,第一個彈出窗口會消失,但會彈出另一個窗口。我可以通過調用document.body.remove(「#ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix」)來擺脫它。在我的combat.php中,但這有不必要的影響,「Hello World!」不再顯示。我如何擺脫這種不需要的彈出?

感謝您的閱讀。

+0

是什麼'loadPage()'做什麼? – Barmar

+0

loadPage將頁面加載到div中。 – user2361103

+1

它有助於在'OK'函數中調用'thatmsg.dialog(「close」)'? – Barmar

回答

0

用途:

"OK" : function(){ 
     loadPage("combat.php"); 
     thatmsg.dialog("close"); 
    }