我想處理POST數據從Ajax到laravel控制器,但我無法訪問它。這就是我在AJAX中所做的。AJAX張貼到laravel返回404沒有找到
$.ajax({
type:'POST',
url:'/complete_ca_fin',
data: {fin_id: id},
success:function(data){
console.log(data);
$('#modal_complete').modal('hide');
$('html, body').animate({
scrollTop: 0 }, "slow");
$('#message_form').empty().css('display','block').removeClass('alert-danger').addClass('alert-success').text('Finished Good CA has been successfully completed.');
$('#message_form').fadeOut(4000);
setTimeout(function(){
window.location = '/quality_control';
}, 3000);
refresh_check = true;
window.onbeforeunload = null;
},
error: function (data) {
console.log('Error: ' + data);
} // end of error
}); // ajax
id
應該在控制器中訪問。下面是我的路線
Route::post('/complete_ca_fin', '[email protected]_ca_fin');
這裏是我的控制器
public function complete_ca_fin(Request $request) {
$id = $request->id;
$complete_ca = FinishedCA::findOrFail($id);
if ($complete_ca){
$complete_ca->status = '5';
$complete_ca->save();
return 'success';
}
//return 'success';
}
當我嘗試返回$id
只是爲了測試我發現它是空的(我不知道,如果它有什麼用它做)但我知道在ajax var id
有價值,因爲我在控制檯中測試它。
以下是控制檯日誌的示例。 37是id的值,所以應該在控制器
我想我失去了請求的價值,我試着做這個'$ id = $ request-> id; return $ id;'並且它返回空。你可以幫我嗎?我認爲這就是失敗的原因。 – user827391012
我現在不知道。原來我需要在我的ajax請求上使用'data:{variable:value}' – user827391012
對不起,應該提到你需要向var添加一個鍵。很高興你把它排序,供將來參考'orFail'將返回一個404響應,如果該項目沒有被發現,只需使用'find'你必須檢查null null :) – Ian