2012-02-09 6 views
5

Próbuję zaimplementować płatności adaptacyjne jako płatności osadzone w lightboxie.Powrócony adres URL płatności za pomocą wbudowanego adresu wyświetlany w ramce ifram

Działa poprawnie, dopóki użytkownik nie dokona płatności, ale po zakończeniu przez użytkownika płatności strona określona przez return url zostanie załadowana w elemencie iframe. Spodziewam się, że zostanie załadowany do okna NIE znajdującego się w elemencie iframe. Poniżej znajduje się kod, który mam. Czy czegoś brakuje?

Środowisko
Java (ramy play)
PayPal_Platform_Java_SDK_N

Oczekiwany transferu Page Scenariusz
Strona A - ("płacić z paypal" Kliknij przycisk)
→ dialogowe paypal - ("blisko" kliknij przycisk)
→ PageB

PageA.html

<form action="https://www.sandbox.paypal.com/webapps/adaptivepayment/flow/pay" target="PPDGFrame"> 
    <dl> 
    <dt></dt> 
    <dd> 
     <input id="type" type="hidden" name="expType" value="light"> 
     <input id="paykey" type="hidden" name="paykey" value="AP-KEY"> 
     <input type="submit" id="paypalSubmitBtn" value="Pay with paypal" /> 
    </dd> 
    </dl> 
</form> 
<script type="text/javascript"> 
    var dgFlow; 
    $(function(){ 
    dgFlow = new PAYPAL.apps.DGFlow({ trigger: 'paypalSubmitBtn' }); 
    }); 
</script> 

PageB.html

<p>Thank you for your payment!</p> 

<script type="text/javascript"> 
    function handleEmbeddedFlow() { 
    if (top && top.opener && top.opener.top) { 
     top.opener.top.dgFlow.closeFlow(); 
    } 
    else{ 
     top.dgFlow.closeFlow(); 
    } 
    top.close(); 
    } 

    jQuery.event.add(window, "load", function(){ 
    alert("window.load"); 
    handleEmbeddedFlow(); 
    }); 
</script> 

Zauważyłem również, że dgFlow nie może być rozwiązany w inny przypadek na top.dgFlow.closeFlow(); w PageB.html.

+0

Jestem zainteresowany jeśli inni programiści, którzy próbują to samo udało to .... – TAT

+1

porządku, dostał pracę lightbox , ale jak wspomniano, mini przeglądarka najprawdopodobniej wyświetli się dla 90% użytkowników, ponieważ kto faktycznie jest zalogowany do PayPala? Otrzymuję taki sam wynik jak ty, wartości returnUrl i cancelUrls pojawiają się w ramce IFrame. Bardzo irytujące. Czy znalazłeś jakieś rozwiązanie? Czy możliwe jest uzyskanie adresu URL ramki IFrame przed jej zamknięciem? – Jordan

Odpowiedz