2012-01-24 24 views
-1

私はフォームを送信するためにシャドーボックスを使用しています。私はJavaScriptを初めて使っているので、私にとっては少し難しいです。私は、3つのページ、親ウィンドウ、フォームを持つ子ウィンドウ(シャドウボックスの内容)、および結果を示す更新ページを持っています。子ウィンドウでフォームデータを送信すると、フォームが閉じず、更新ページで値を取得できません。シャドウボックスでフォームを送信するにはどうすればいいですか?

私はこれを行う方法の良いアイデアを得るのに役立つチュートリアルや例をお勧めしますか?

これは、これまで

//親ウィンドウ(index.phpを)

<html> 
    <head> 
    <script type="text/javascript" src="jquery.min.js"></script> 
    <link rel="stylesheet" type="text/css" href="shadowbox/shadowbox.css"> 
    <script type="text/javascript" src="shadowbox/shadowbox.js"></script> 
    <script type="text/javascript"> 
    Shadowbox.init(); 
    </script> 
    </head> 
    <body> 

例シャウッドゥボックス

<script language="javascript"> 
    $('#mylink').click(function(){ 
     Shadowbox.open({ 
      content: 'mybox.php', 
      player:  'iframe', 
      height:  550, 
      width:  800, 
      options: { 
       onClose: 
        function() { 
        top.location  = "update.php";     

        } 
      } 
     }); 
    }); 
</script> 

//mybox.php

<form name="theform" action="update.php" method="POST"> 
<input type="text" name="nametxt" id= "nametxt"><br> 
<input type="submit" value="submit"> 
</form> 
が私のコードです

//update.php

<?php 
if(isset($_POST['nametxt'])) 
echo $_POST['nametxt']; 
?> 

これは単なる例に過ぎません。フォームが送信されると、データは更新用のPHPで表示する必要があります。あなたが提出されているフォームは、デフォルトでは、iframe内の結果であることから、http://net.tutsplus.com/tutorials/javascript-ajax/submit-a-form-without-page-refresh-using-jquery/

+2

これまでに作成したコードを投稿すると、開発を手助けすることができます。 –

+0

ありがとうございましたジョシュ、私は自分のコードを投稿した、私はこれで私を助けることができる場合は嬉しいだろう、私はこれについての良い理解を持っていないWeb開発に新しいので、 – user1157690

答えて

0

のおかげではNetTutsにフォームを送信するこの単純な例をチェックアウトすることができますPOSTも行われます。 iframeでtarget = "_ top"を使用してトップレベルにリダイレクトできます。ページはupdate.phpに送信され、出力はページ全体を置き換えます。このパラメータの設定方法については、Shadowboxのドキュメントを参照してください。

もう1つの方法は、出力をセッションに保存し、top.location = "update.php"の結果である2番目のGETリクエストに戻すことです。

これは、結果ページを別の名前にすると最も簡単ですが、アプリケーションによって異なります。

0

まず: は、いずれかの助けを借り、事前

関連する問題