2011-01-13 10 views
0

iFrameを含むjQueryモーダルダイアログがあり、iframeにフォームが含まれています。ユーザーがフォームを送信すると、モーダルダイアログを閉じます。jQuery iframeモーダル閉じるフォームに部分的に投稿する

私はこの質問に書かれたコードの最後のビットを追加することでそれをすることができましたが、問題はそれが一度しかダイアログを閉じないということです。もし私が再度開いて閉じようとすると、 。 index.phpの上

jqueryのモーダルスクリプト:showRegDialogモーダルを呼び出すためのindex.phpに

<script type="text/javascript"> 
function showRegDialog(url) { 
    $(function() { 
      var $this = $(this); 
      var horizontalPadding = 30; 
      var verticalPadding = 30; 
      $('<iframe id="externalSite" scrolling="no" frameborder="0" class="externalSite" src="' + url + '" />').dialog({ 
       title: ($this.attr('title')) ? $this.attr('title') : 'Choose your location', 
       autoOpen: true, 
       width: 700, 
       height: 700, 
       modal: true, 
       resizable: true, 
       autoResize: true, 
       overlay: { 
        opacity: 0.5, 
        background: "black" 
       } 

      }).width(700 - horizontalPadding).height(700 - verticalPadding);    

    }); 
} 
</script> 

がリンク:

<a href="javascript:showRegDialog('/register.php');">Register now</a> 

これはregister.php

<html> 
<body> 
<form action="" method="POST" onsubmit="parent.closeModal();"> 
<input type="text"> 
<input type="submit"> 
</form> 
</body> 
</html> 
の内容です

私はこれをindex.phpに追加しました:

function closeModal() { 
    $("#externalSite").dialog("close"); 
} 

答えて

0

あなたのindex.php

function closeModal() { 
    $("#externalSite").dialog("destroy"); 
} 
のために試用できます
関連する問題