【发布时间】:2017-08-18 13:29:02
【问题描述】:
我已经创建了从条带中获取令牌的代码,该过程是当我单击按钮时,请求转到 js,在 js 中,我从条带中请求令牌,但问题是当响应请求成功时,我使用 jquery 一次又一次地从条带提交表单请求令牌。
请帮助我在哪里做错了。
这是 HTML 代码
<form action="submit.php" id="payment-form" method="post">
<span class="payment-errors" style="color:red;font-size: 13px"></span>
<p>
<label for="">Card Number</label>
<input type="text" data-stripe="number">
</p>
<p>
<label for="">CVC</label>
<input type="text" data-stripe="cvc">
</p>
<p>
<label for="">Expiration mm/yyyy</label>
<input type="text" data-stripe="exp-month">
<input type="text" data-stripe="exp-year">
</p>
<button type="submit" name="submit">Submit</button>
</form>
这是我的 js 代码
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript" src="https://js.stripe.com/v2/"></script>
<script type="text/javascript">
Stripe.setPublishableKey('pk_test_J16ou3qOqkQG190gDIb0DjeE');
$('#payment-form').submit(function(e){
$form = $(this);
$form.find('button').prop('disabled' , true);
Stripe.card.createToken($form, function(status, response){
console.log(status);
console.log(response);
if(response.error){
$form.find('.payment-errors').html(response.error.message);
$form.find('button').prop('disabled' , false);
} else{
var token = response.id;
$form.append($('<input type="hidden" name="stripe-token" />').val(token));
$('#payment-form').submit();
}
});
return false;
});
</script>
这是我的 conole 图片
【问题讨论】: