4

有一个页面作为transaction.html

如何在另一个页面的弹出窗口中打开此页面在 jquery 对话框中说 show_transactions.html

       $dialog.html()  //open transaction.html in this dialog
     .dialog({
        autoOpen: true,
        position: 'center' ,
        title: 'EDIT',
        draggable: false,
        width : 300,
        height : 40, 
        resizable : false,
        modal : true,
     });
     alert('here');
     $dialog.dialog('open');

此代码存在于 show_transactions.html

谢谢..

4

2 回答 2

15

您可以使用 jQuery 的.load()方法将页面加载到对话框中,方法如下:

$("#dialog").dialog({
    autoOpen: false,
    position: 'center' ,
    title: 'EDIT',
    draggable: false,
    width : 300,
    height : 40, 
    resizable : false,
    modal : true,
});

$("#dialog_trigger").click( function() {
    $("#dialog").load('path/to/file.html', function() {
        $("#dialog").dialog("open");
    });
})

这假定对话框的 ID 为“dialog”,并且还有另一个 ID 为“dialog_trigger”的元素被单击以打开它。您将这两个都放入文档的就绪函数中,以便在页面加载时生成对话框,如果不是,则会在生成时对用户造成轻微但明显的延迟。

于 2010-05-03T05:50:19.087 回答
3

你也可以这样做...

创建对话页面

<div id="MyDialogID"  title="My Dialog Title"></div>

创建一个链接(当我们单击该链接时,它将打开对话框)

<a id="MyLinkToDialogID" href="Path to Dialog Page">Open My Dialog</a>

初始化对话框(在链接和对话框之间创建一个事件)

$('#MyLinkToDialogID').each(function () {
    var $link = $(this);

    $.post($link.attr('href'), function (data) {
        var $dialog = $(data)
            .filter('#MyDialogID')
            .dialog({
                autoOpen: false,
                resizable: false,
                height: 240,
                width: 370,
                modal: true
            });

            $link.click(function () {
               $dialog.dialog("open");
               $dialog.css("height", "240");
               $dialog.css("width", "370px");
               $dialog.dialog({ position: 'center' });

               return false;
            });
    });
});
于 2014-03-17T16:28:52.750 回答