不要使用Stripe收集Zip代码

Mar*_*ark 19 javascript stripe-payments

我试图使用Stripe v3付款.该指南位于https://stripe.com/docs/elements

我不想收集邮政编码.但是我无法弄清楚如何.我的HTML是:

<form>
  <label>
    <div id="card-element" class="field is-empty"></div>
    <span><span>Credit or debit card</span></span>
  </label>
  <button type="submit">Pay</button>
  <div class="outcome">
    <div class="error" role="alert"></div>
    <div class="success">
      Success! Your Stripe token is <span class="token"></span>
    </div>
  </div>
</form>
Run Code Online (Sandbox Code Playgroud)

而javascript是:

var card = elements.create('card', {
  style: {
    hidePostalCode: true,
    base: {
      iconColor: '#666EE8',
      color: '#31325F',
      lineHeight: '40px',
      fontWeight: 300,
      fontFamily: '"Helvetica Neue", Helvetica, sans-serif',
      fontSize: '15px',

      '::placeholder': {
        color: '#CFD7E0',
      },
    },
  }
});

card.mount('#card-element');
Run Code Online (Sandbox Code Playgroud)

但它总是要求输入邮政编码:

在此输入图像描述

这里有一个Element标签指南https://stripe.com/docs/stripe.js#element-types.但我看不到我可以在哪里收集卡号,CVC和卡到期,但不是邮政编码......

duc*_*uck 40

谢天谢地,这应该是一个非常简单的修复!hidePostalCode: true应该是你的顶级属性options,而不是嵌套在style这里.

https://stripe.com/docs/stripe.js#element-options

var card = elements.create('card', {
hidePostalCode: true,
style: {
 base: {
  iconColor: '#666EE8',
  color: '#31325F',
  lineHeight: '40px',
  fontWeight: 300,
  fontFamily: '"Helvetica Neue", Helvetica, sans-serif',
  fontSize: '15px',

  '::placeholder': {
    color: '#CFD7E0',
   },
  }, 
 } 
});

card.mount('#card-element');
Run Code Online (Sandbox Code Playgroud)

  • 不同的国家有不同的要求。我与全球销售合作,如果我输入来自美国/加拿大等国家/地区的卡,则需要 zip,但如果我尝试巴西等国家/地区,则不需要。该组件会自动处理这个问题,这很棒。 (2认同)

And*_*gel 13

要删除邮政编码集合,请在javascript代码段中执行以下操作:

 var style = {//styling
              //lots of style stuff
             };
 var card = elements.create('card', {hidePostalCode: true, style: style});
Run Code Online (Sandbox Code Playgroud)

  • 我确实改进了答案,它回答了这个问题,因为它删除了邮政编码要求...... (4认同)
  • 这不能为问题提供答案。获得足够的[信誉](https://stackoverflow.com/help/whats-reputation)后,您就可以[评论任何帖子](https://stackoverflow.com/help/privileges/comment);相反,[提供不需要问询者澄清的答案](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an-我来代替)。-[评论](/ review / low-quality-posts / 21075510) (2认同)

Aye*_*ghe 7

如果直接使用CardElementfrom 的组件'@stripe/react-stripe-js',则可以使用带有 props 的组件。

<CardElement options={{ hidePostalCode: true }}/>
Run Code Online (Sandbox Code Playgroud)