我設法創建了一種將數據以PHP的形式發佈到商店控制器的表單。它運行良好,但現在我嘗試轉換它,以便它可以發出Ajax請求。Ajax在Laravel中向控制器(存儲)發佈表單
我不能讓它工作。當我點擊提交,我沒有消息,沒有頁面刷新,也沒有數據存儲。 Google CHrome開發人員工具的網絡選項卡顯示瀏覽器向Leads控制器發出Post請求。這是我得到的,有什麼不對?
create.blade.php(圖)
{{ Form::open(['route'=>'leads.store', 'method'=>'post', 'class'=>'formcontainer', 'id'=>'leadscreate']) }}
{{ Form::label('nomopportunite','Nom du lead')}}
{{ Form::text('nomopportunite', '', array('id'=>'nomopportunite1', 'class'=>'form-control', 'placeholder'=>'Nom du lead')) }}
{{ Form::label('statut','Statut')}}
{{ Form::select('statut', array('1' => 'Premier contact', '2' => 'En négociation', '3' => 'Fermé - Gagné', '4' => 'Fermé - Perdu'), '', array('id'=>'statut1')) }}
{{ Form::label('valeur','Valeur')}}
{{ Form::text('valeur', '', array('id'=>'valeur1', 'class'=>'form-control', 'placeholder'=>'Valeur ($)')) }}
{{ Form::submit('Ajouter', array('class'=>'btn btn-primary')) }}
{{ Form::close() }}
JavaScript的AJAX部分
jQuery(document).ready(function() {
$('#leadscreate').on('submit', function(){
$.post(
$(this).prop('action'), {
"_token": $(this).find('input[name=_token]').val(),
"nomopportunite": $('#nomopportunite1').val(),
"statut": $('#statut1').val(),
"valeur": $('#valeur1').val()
},
function(data){
//response after the process.
},
'json'
);
return false;
});
});
LeadsController.php(店)
public function store() {
if (Session::token() !== Input::get('_token')) {
return Response::json(array(
'msg' => 'Erreur!'
));
}
$nomopportunite = Input::get('nomopportunite');
$statut = Input::get('statut');
$valeur = Input::get('valeur');
$response = array(
'status' => 'success',
'msg' => 'L\'opportunité a bien été ajoutée!',
);
return Response::json($response);
}
有什麼錯誤? ajax函數的響應是什麼? – Ohgodwhy 2014-10-02 22:58:16
當我點擊按鈕時,沒有任何反應。沒有頁面刷新,沒有消息,也沒有數據存儲在數據庫中。 – 2014-10-02 23:00:02
檢查瀏覽器的控制檯是否有錯誤。 – 2014-10-02 23:12:44