2016-12-03 5 views
0

私はthis exampleをストライプ上で処理していますが、約束されたフォームの中断は起こりません。フォームは正常に送信され、それが終了します。私の頭の中でストライプフォームが動作しない

は私が次に

<script type="text/javascript" src="https://js.stripe.com/v2/"></script> 
<script type="text/javascript">Stripe.setPublishableKey('mytestkey');</script> 

を持って、ここに私のフォームです:

<form action="/your-charge-code" method="POST" id="payment-form"> 
<span class="payment-errors"></span> 

    <div class="form-row"> 
    <label> 
     <span>Card Number</span> 
     <input type="text" size="20" data-stripe="number"> 
    </label> 
    </div> 

    <div class="form-row"> 
    <label> 
     <span>Expiration (MM/YY)</span> 
     <input type="text" size="2" data-stripe="exp_month"> 
    </label> 
    <span>/</span> 
    <input type="text" size="2" data-stripe="exp_year"> 
    </div> 

    <div class="form-row"> 
    <label> 
     <span>CVC</span> 
     <input type="text" size="4" data-stripe="cvc"> 
    </label> 
    </div> 
<input type=hidden name=publication_id value="<?php echo $pub_id; ?>" /> 
    <input type="submit" class="submit" value="Submit Payment"> 
</form> 

とJavaScriptがリンクされたファイルである:

$(function() { 
    var $form = $('#payment-form'); 
    $form.submit(function(event) { 
    // Disable the submit button to prevent repeated clicks: 
    $form.find('.submit').prop('disabled', true); 

    // Request a token from Stripe: 
    Stripe.card.createToken($form, stripeResponseHandler); 

    // Prevent the form from being submitted: 
    return false; 
    }); 
}); 

私が提出し、それはただフォームアクション(私はまだそれのために何も設定していない)に行く。

答えて

1

ここで説明したようにあなたは、Stripe.card.createTokenにオブジェクトを渡しする必要があります。

https://stripe.com/docs/stripe.js?#collecting-card-details

また、あなたがstripeResponseHandlerが定義されていることを確認してください。

+0

OPの説明に含まれている[例](https://stripe.com/docs/custom-form)には、「第1引数は支払詳細です。これは、汎用オブジェクトの個々のメンバーとして提供することも、フォーム全体への参照に沿って渡すこともできます。」主な問題は、レスポンスハンドラが定義されていないことです... –

+0

ありがとうございますが、これは既にStripe.card.createToken($ form、stripeResponseHandler)のjavascript関数で処理されています(フォーム入力からオブジェクトを作成します)。まあ、私はあなたが示唆している方法でそれを試しましたが、その振る舞いは同じです。 –

+0

それは@sam Onelaだった。私は一歩一歩進みましたが、私は一度にすべてをやる必要があったと思います。 –

関連する問題