0

いくつかのタブ、動的データなどを含むjqueryダイアログウィンドウを取得しました。その中に、別のダイアログを呼び出すボタンがあります。そのダイアログには、保存と閉じるための 2 つのボタンがあります。しかし、保存をクリックすると、コンテンツが保存されてダイアログが閉じられますが、親ダイアログも閉じられます。これは望ましくありません。これは通常どのように解決されますか?子ダイアログのコードは次のとおりです。

$('<div id="popis" style="display:none">').dialog({
        title: 'Popis rizika',
        height:300,
        buttons:{
                'Uložit': function(){
                    $("#popisRizika").submit();
                    $(this).remove();
                },


    'Zrušit': function(){
                $( this ).dialog( "close" );
            },                  
    },
    open: function(event, ui){
        $(this).load('rizika_popis.php?stupen='+<?echo $IdStStupen;?>+'&index='+i);
    },
    close: function(ev, ui){
            $(this).remove();
    },
});
4

1 に答える 1

1

これは、保存がクリックされたときにフォーム$("#popisRizika").submit();を送信しているためです..ページ全体がリロードされ、親ダイアログと子ダイアログも閉じられます..ここで必要なのは、$. ajax$. postまたは $.get.. これはページをリロードしないため、コールバックが成功した後に手動で子ダイアログを閉じることができます

$.postを使用して、このようなもの:

 'Uložit': function(){
                $.post(url,$("#popisRizika").serialize(),function(result){
                   $( this ).dialog( "close" );
                })
            },
于 2013-03-19T10:33:20.667 に答える