Я использовал это в моей html-части:
<meta name="csrf-token" content="{{ csrf_token() }}" />
В скрипте я сделал:
$(document).ready(function() {
$(document).on('change','#user_id', function() {
try {
var user_id = $(this).val();
$('#balance_amount').val("Loading response...");
$.ajaxSetup({
beforeSend: function(xhr, type) {
if (!type.crossDomain) {
xhr.setRequestHeader('X-CSRF-Token', $('meta[name="csrf-token"]').attr('content'));
}
},
});
$.ajax({
url: "{{ URL::to('/getEmpBalance')}}",
method: 'post',
data: {
'user_id' : user_id
},
success: function(result) {
console.log("Success "+result);
$('#balance_amount').val(result);
},
error: function(e, jqXHR, textStatus, errorThrown) {
// console.log("Error "+e);
// console.log(JSON.stringify(jqXHR));
console.log("AJAX error: " + textStatus + ' : ' + errorThrown);
$('#transaction_description_editor').html(e);
}
});
//console.log(user_id);
} catch (e) {
// console.log(e);
// console.log(warning);
// console.log(text);
}
});
});
Но после отправки запроса на сообщение ajax выдает ошибку, и когда я проверяю,Я обнаружил
{message: «Метод App \ Http \ Controllers \ AjaxController :: getEmployeeBalance не существует.»,…} Исключение: файл «BadMethodCallException»: «/home/studyn5/exp.studynextglobal.com / vendor / laravel / framework / src / Illuminate / Routing / Controller.php "строка: 68 сообщение:" Метод App \ Http \ Controllers \ AjaxController :: getEmployeeBalance не существует ". trace: [{function: "__call", класс: "Illuminate \ Routing \ Controller", тип: "->"}, {,…}, {,…}, {,…}, {,…},…]
Но это мой контроллер ajax. Я уже упоминал этот метод
public function getEmployeeBalance(Request $request) {
$user_id = $request->user_id;
$exp_amount = DB::table('exp_amounts')
->where('user_id', $user_id)
->orderBy('created_at','desc')
->first();
if ($exp_amount === null) {
echo "0";
}
else {
$balance_amount = $exp_amount ->total_amount;
echo $balance_amount;
}
}