2013-11-26 130 views
0

我使用jQuery對話框中模態對話框顯示HTML文件:點擊鏈接jQueryUI的對話框

主站點調用的test.html:

<body> 
<div id="layer" style="display: none;"> 
</div> 
</body> 
<script type="text/javascript"> 

    $("#layer").dialog({ 
      dialogClass: 'noTitleStuff', 
     autoOpen: false, 
     position : ['center',20], 
     /*draggable: false, */ 
     resizable : true, 
     modal : true, 
      show : 'fade', 
      hide : /*'drop'*/'fade', 
      width: 'auto', 
      heigth: 'auto', 
      open: function() { 
      $(".ui-dialog-titlebar").removeClass('ui-widget-header'); 
     }, 

    }); 

    $(function() { 
     $("#layer").load('test.php', function() { 
      $("#layer").dialog("open"); 
     }); 
    }); 

</script> 

能正常工作和測試的內容.php顯示得很好。但是當我點擊test.php中的鏈接時,鏈接在整個瀏覽器窗口中打開。我怎樣才能在對話框中顯示新的網站呢?

感謝您的幫助

+1

你有在你面前的答案!你需要將新的URL加載到對話框中。 – Mathletics

+0

在對話框中添加一個iframe,然後在其中打開url。 –

回答

0

將新網址的內容加載到對話框中。

$(function(){ 

    $(document).on("click", ".yourLinkCssClassName", function (e) { 
     e.preventDefault(); 
     $.get($(this).attr("href"), function (data) { 
      $("#layer").html(data); 
     }); 
    }); 

}); 
+0

感謝您的幫助。這工作。不幸的是,當用這種方式加載新頁面時,圖層不適合寬度和高度。還有一些不起作用的是在該對話框中加載來自其他網站的內容(例如http://google.de)。我的第一次嘗試是使用iframe,但是使用iframe時,我也遇到了高度和寬度的問題。其實我真的很想要一個iframe,因爲我想加載模式對話框的獨立頁面,與頁面無關。是否有可能自動固定寬度和高度可能最大? – user1829716