我正在尝试将条带集成到我的Ember应用程序中,并且在初始卡片收集帖子完成时我遇到了障碍。 Stripe尝试发布
周围的表单<form {{action "charge" on="submit"}} method="POST">
<input type="hidden" name="plan" {{bind-attr value="plan.id"}} />
{{strip-button amount=plan.amount name=plan.name emailAddress=emailAddress}}
</form>
问题在于我不想不想做服务器POST
。我想劫持POST
形式,并自己创建stripeToken和其他数据元素的自定义帖子来实际创建费用。
下面的StripeButton组件:
var StripeButton = Ember.Component.extend({
scriptSource: '<script src="https://checkout.stripe.com/checkout.js" class="stripe-button"',
scriptClose: '></script>',
dataElement: function(element, value) {
return 'data-' + element + '="' + value + '"';
},
didInsertElement: function() {
this.$().append(
this.get('scriptSource') +
this.dataElement('key', 'pk_test_wat') +
this.dataElement('amount', this.get('amount')) +
this.dataElement('email', this.get('emailAddress')) +
this.dataElement('label', this.get('name') + ' Plan') +
this.dataElement('name', 'Company Name') +
this.dataElement('description', this.get('name')) +
this.get('scriptClose')
);
}
});
export default StripeButton;
如何通过自己的操作告诉Ember控制表单提交以执行我需要的自定义ajax?
答案 0 :(得分:1)
您可能需要在此处查看checkout.js
自定义集成:https://stripe.com/docs/checkout#integration-custom
这将使您在创建解决方案时具有更大的灵活性,而不是试图破解简单的集成。