0
我的代碼有問題。真的不知道什麼是錯的。Laravel路線不適用於js
該路線應該顯示來自輸入的令牌數據,但提交按鈕只是加載並沒有任何反應。因此,隨着檢查元素 - 令牌生成。 這裏是路線:
Route::get('buy', function(){
return View('pages.add_creditcard');
});
Route::post('buy', function(){
dd(Input::all());
});
這裏查看(刀片):
{!! Form::open(['id' => 'billing-form', 'url' => '/buy', 'method' => 'post']) !!}
卡號: CVC: 截止日期: {! Form :: selectMonth(null,null,['data-stripe'=>'exp-month'])!!} {!!形式:: selectRange(NULL,日期( 'Y'),日期( 'Y')+ 10,空,[ '數據條紋'=> 'EXP-年'])!}
{!!表::提交( '立即購買',[ '身份證'=> '提交'])!}
{!! Form::close() !!}
這裏是js文件:
(function() {
var StripeBilling = {
init: function() {
this.form = $('#billing-form');
this.submitButton = this.form.find('input[type=submit]');
this.submitButtonValue = this.submitButton.val();
var stripeKey = $('meta[name="publishable-key"]').attr('content');
Stripe.setPublishableKey(stripeKey);
this.bindEvents();
},
bindEvents: function() {
this.form.on('submit', $.proxy(this.sendToken, this));
},
sendToken: function(event) {
this.submitButton.val('One Moment...').prop('disabled', true);
Stripe.createToken(this.form, $.proxy(this.stripeResponseHandler, this));
event.preventDefault();
},
stripeResponseHandler: function(status, response) {
if(response.error) {
this.form.find('.payment-errors').show().text(response.error.message);
return this.submitButton.prop('disabled', false).val(this.submitButtonValue);
}
$('<input>', {
type: 'hidden',
name: 'stripeToken',
value: response.id
}).appendTo(this.form);
//this.form[0].submit();
}
};
StripeBilling.init();
})();
此表單完全正常工作,但POST方法什麼都不做。也許JS是問題?
當我改變this.form = $( '#計費形式')以this.form = $( '計費形式')POST工作。它會生成一個令牌並將其顯示在帖子頁 – codddeerz
通過stripe.js,信用卡信息不會觸及服務器,您將獲得一個令牌。 – mdamia
是的!但是當我添加信用卡並點擊提交按鈕時,它正在加載並創建令牌。我可以在檢查元素上看到隱藏元素。但爲什麼這條路線::發佈不工作? – codddeerz