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」の別の要素があることを前提としています。これらの両方をドキュメントのready関数に入れて、ダイアログがページの読み込み時に作成されるようにします。そうでない場合は、作成時にユーザーにわずかですが顕著な遅延が発生します。

于 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 に答える