2016-07-01 10 views
0

私はPHPでウェブサイトを持っています。私の状況はiframeウィンドウで支払い処理のための送信ボタンをクリックする必要があるチェックアウトページです。支払い処理が完了したら、iframeウィンドウを閉じて、成功ページにリダイレクトする必要があります。iframeが閉じずにページがiframeにリダイレクトされました。JavaScriptを使用してリロードページのiframeウィンドウを閉じるには

コードは次のようになります。

<form><input type="button" name="payfort" value="Continue" onclick="CreditPay();" id="payfort" class="payfort" /></form> 

<script type="text/javascript"> 
     function CreditPay() {     

        var pop = document.getElementById('popup-win'); 
        pop.style.display = 'block'; 
        document.getElementById('overlay').className = 'show'; 
        document.getElementById('payfortForm').submit(); 
        return false; 
      }</script> 

とコードの下のiframeで開かれている:

<div class="popup-win" id="popup-win" style="display: none;"> 
    <div class="popup-header"> 
    </div> 
    <div class="popup-subtitle"> 
     Transaction Value:<span class='currency-txt'>AED&nbsp; 17.00</span> 
    </div> 
    <iframe id="ifrmPAYFORT" name="ifrmPAYFORT" style="width: 100%; height: 450px"></iframe></div> 

<div class="overlay" id="overlay"></div> 
    <form METHOD="post" ACTION="http://localhost/phppayfort/success.php" id="payfortForm" name="payfortForm" target="ifrmPAYFORT"> 

     <input type="hidden" name="service_command" value="<?php echo $requestParams['service_command'] ?>"> 
     <input type="hidden" name="language" value="<?php echo $requestParams['language'] ?>"> 
     <input type="hidden" name="merchant_identifier" value="<?php echo $requestParams['merchant_identifier'] ?>"> 
     <input type="hidden" name="access_code" value="<?php echo $requestParams['access_code'] ?>"> 
     <input type="hidden" name="signature" value="<?php echo $signature ?>"> 
     <input type="hidden" name="return_url" value="<?php echo $requestParams['return_url'] ?>"> 
     <input type="hidden" name="merchant_reference" value="<?php echo $requestParams['merchant_reference'] ?>"> 
    </form> 

ので、リロードページ上のiframeウィンドウを閉じるする方法はありますか?

アドバイスを事前にいただきありがとうございます。

+0

コードを表示してください。 –

+0

'iframeウィンドウを閉じる'とは、DOMから特定のiFrame要素を削除したいということですか? –

+0

iframe内にphpコードがある場合は、iframeの外側にリダイレクトすることはできません。代わりに新しいタブでリダイレクトページを開き、他のタブを閉じることができます –

答えて

0

あなたは次のように、あなたのiframeのクラスを設定することができます。

<iframe class="myiframe"></iframe> 

そして、いくつかのJS、フォームがsubmited、更新クラスは= "myiframe" で遊ぶと '表示:なしを;' を追加。

iframeToHide = document.getElementsByClassName("myiframe"); 
iframeToHide.style.display = "none"; 

をリダイレクトする方法:

window.location = "http://www.yoururl.com"; 

注意、これはと、JSソリューションです

リダイレクションのために、あなたはhref.locationあなたのiframeを隠す方法

を使用することができますPHPこれを解決できるかどうかわかりません。

乾杯!

関連する問題