微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JQuery-step 和 Stripe - 卡安装

如何解决JQuery-step 和 Stripe - 卡安装

我有一个使用 JQuery.steps 的注册/注册页面。在页面加载时执行以下代码

var elements = stripe.elements();
var card = elements.create('card');
card.mount('#card-element');

因此,一旦加载页面并进入付款步骤,我就会看到该元素显示在我的页面上,其中包含 CC 字段、到期日等。

我需要的是,一旦用户进入付款步骤,我需要将卡信息发送到我的 Nodejs 服务器代码,以便创建客户信息和付款信息。我的目标是能够获得信用卡的最后 4 位数字,以便在提交之前向用户展示。为此,我调用了提供最后 4 位数字的 createtoken 函数

所以在最后一步之前,(用户已经输入信用卡信息并按下了下一步(当前索引=0,nextIndex 1))我有以下代码

onStepChanging: function(event,currentIndex,newIndex) {
   if (currentIndex == 0 && newIndex == 1) {
      stripe.createtoken(card).then(function(result) { // <-- this is where the error happens
      if (result.error) {
         var errorElement = document.getElementById('card-errors');
         errorElement.textContent = result.error.message;
         return false;
      },}
onFinishing: function(event,currentIndex) {
   stripe.createPaymentMethod({
       type: 'card',card: card,})
   .then((result) => {
       if (result.error) {
          displayError(error);
       } else {
          var fd = new FormData();
          fd.append('customerId',customerId);
          fd.append('paymentMethodId',paymentMethodId);
          ...          

不幸的是,一旦调用了 stripe.createtoken(card),我就会收到以下错误

IntegrationError:我们无法从指定的元素中检索数据。 请确保您尝试使用的元素仍处于挂载状态。

我基本上在将卡信息发送到我的 nodejs 服务器时遇到问题。

有什么建议吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。