Javascript 如何将条带调整到主干视图中?
下面是通过Stripe.js提交信用卡表单的通用代码。我需要将其放入我粘贴在下面的主干视图中:Javascript 如何将条带调整到主干视图中?,javascript,backbone.js,stripe-payments,Javascript,Backbone.js,Stripe Payments,下面是通过Stripe.js提交信用卡表单的通用代码。我需要将其放入我粘贴在下面的主干视图中: // Add Submit Btn Event Listener and Stripe Token Generator from fields jQuery(function($) { $('#payment-form').submit(function(event) { event.preventDefault(); var $fo
// Add Submit Btn Event Listener and Stripe Token Generator from fields
jQuery(function($) {
$('#payment-form').submit(function(event) {
event.preventDefault();
var $form = $(this);
// Disable the submit button to prevent repeated clicks
$form.find('button').prop('disabled', true);
Stripe.createToken($form, stripeResponseHandler);
// Prevent the form from submitting with the default action
return false;
});
}); // End jQuery random function
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();
}
}; // End stripeResponseHandler
//从字段添加提交Btn事件侦听器和条带令牌生成器
jQuery(函数($){
$(“#付款单”)。提交(功能(事件){
event.preventDefault();
var$form=$(此);
//禁用“提交”按钮以防止重复单击
$form.find('button').prop('disabled',true);
createToken($form,stripeResponseHandler);
//阻止使用默认操作提交表单
返回false;
});
}); // 结束jQuery随机函数
var stripeResponseHandler=函数(状态、响应){
var$form=$(“#付款单”);
if(response.error){
//在表单上显示错误
$form.find('.payment errors').text(response.error.message);
$form.find('button').prop('disabled',false);
}否则{
//令牌包含id、last4和卡类型
var token=response.id;
//将令牌插入表单,以便将其提交到服务器
$form.append($('').val(标记));
//并提交
$form.get(0.submit();
}
}; // End stripeResponseHandler
我尝试将其纳入主干视图(不起作用):
WhiteDeals.Views.ProgramPayment = Backbone.View.extend({
initialize: function() {
_.bindAll(this);
},
events: {
"submit form#payment-form": "createStripeToken"
},
createStripeToken: function(event) {
event.preventDefault();
var $form = $(this);
// Disable the submit button to prevent repeated clicks
$form.find('button').prop('disabled', true);
Stripe.createToken($form, stripeResponseHandler);
// Prevent the form from submitting with the default action
return false;
}, // createStripeToken
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();
}
},
render: function () {
var dealProgram = this.model.toJSON()
this.$el.html(JST['program/payment']({ dealProgram: this.model.toJSON() }));
// Show Payment Modal
$('#payment-modal').modal({
show: true,
keyboard: true,
backdrop: true
})
return this;
}
WhiteDeals.Views.ProgramPayment=Backbone.View.extend({
初始化:函数(){
_.bindAll(这个);
},
活动:{
“提交表格#付款表格”:“createStripeToken”
},
createStripeToken:函数(事件){
event.preventDefault();
var$form=$(此);
//禁用“提交”按钮以防止重复单击
$form.find('button').prop('disabled',true);
createToken($form,stripeResponseHandler);
//阻止使用默认操作提交表单
返回false;
},//createStripeToken
stripeResponseHandler:函数(状态、响应){
var$form=$(“#付款单”);
if(response.error){
//在表单上显示错误
$form.find('.payment errors').text(response.error.message);
$form.find('button').prop('disabled',false);
}否则{
//令牌包含id、last4和卡类型
var token=response.id;
//将令牌插入表单,以便将其提交到服务器
$form.append($('').val(标记));
//并提交
$form.get(0.submit();
}
},
渲染:函数(){
var dealProgram=this.model.toJSON()
this.$el.html(JST['program/payment']({dealProgram:this.model.toJSON()}));
//显示付款模式
美元(“#支付模式”)。模式({
秀:没错,
键盘:没错,
背景:真的
})
归还这个;
}
})) 上下文将不一样。将侦听器与视图中的
事件
对象绑定时,上下文将自动绑定到视图本身。更改: 到
它以什么方式不起作用?
var $form = $(this);
var $form = this.$('#payment-form');