未捕获的ReferenceError:未定义stripeResponseHandler

时间:2013-03-15 19:34:29

标签: javascript jquery stripe-payments

我正在尝试将Stripe整合到信用卡表单中。

可以在http://pastie.org/private/f4flb1hktzdahl9snr4jma查看js和html(供参考,jquery包含在文档的头部)

出于某种原因,我收到以下错误:

Uncaught ReferenceError: stripeResponseHandler is not defined

错误在第11行触发:

Stripe.createToken($form, stripeResponseHandler);

基于此,看起来Stripe.js没有正确加载?但是,行Stripe.setPublishableKey('something');工作正常。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:6)

var stripeResponseHandler = function(status, response) {
  var $form = $('#payment-form');

  if (response.error) {
    // Show the errors on the form
    $form.find('.payment-errors').text(response.error.message);
    $form.find('button').prop('disabled', false);
  } else {
    // token contains id, last4, and card type
    var token = response.id;
    // Insert the token into the form so it gets submitted to the server
    $form.append($('<input type="hidden" name="stripeToken" />').val(token));
    // and submit
    $form.get(0).submit();
  }
};

您缺少部分代码,请参阅此处:https://stripe.com/docs/tutorials/forms