Передача данных через Laravel Controller с помощью ajax

У меня есть два маршрута, определенные следующим образом:

Route::get('directeur/qualite', 'Directeur\qualiteController@index')->name('qualite');
Route::get('directeur/qualite/{texte}','Directeur\qualiteController@getResultOfQuestion')->name('getResultQuestion');

Мой контроллер имеет эту функцию:

public function getResultOfQuestion(){
$texte=Input::get('texte');
$data = DB::table('questions')->where('texte','=',$texte)->value('code');
return['data'=>$data];
}

И я делаю запрос с использованием Ajax, как это:

$.ajax({
type: 'GET',
url: '/emagine/projet1613/public/directeur/qualite/',
data: {
texte: encodeURIComponent(str)
},
success: function (data) {
console.log(data);
},
error: function () {
alert('La requête n\'a pas abouti');
}
});

Я хотел бы получить результат функции, определенной в контроллере, но я не могу это сделать. Что я делаю неправильно?

2

Решение

Просто попробуйте это

Controller

public function getResultOfQuestion($texte){
$data = DB::table('questions')->where('texte','=',$texte)->value('code');
return response()->json(array('data' => $data));
}

AJAX запрос

$.ajax({
type: 'GET',
url: '/emagine/projet1613/public/directeur/qualite/'+encodeURIComponent(str),
success: function (data) {
console.log(data);
},
error: function () {
alert('La requête n\'a pas abouti');
}
});
1

Другие решения

Вам следует обратный ответ:

return response()->json(compact('data'));
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector