Я новичок в Laravel и не имею большого опыта работы с AJAX.Я боролся с проблемой в течение нескольких дней, и я надеюсь, что кто-то может указать мне правильное направление.
Я использую Chart.js и Google Maps API в одном представлении.Все инициализируется нормально, поэтому никаких проблем нет.Я нанес на карту несколько маркеров и загрузил набор данных в Chart.js.Я хочу загрузить новый набор данных в Chart.js при нажатии на маркер.Я пытаюсь вызвать функцию контроллера с другим набором данных с помощью AJAX.Ошибки не возвращаются, журнал консоли от вызова AJAX работает, но функция в MapController не вызывается.
Я попытался выполнить POST для маршрута / map с Почтальоном, и это, кажется, работает нормально.
Вызов AJAX в представлении
$.ajax({
url: "/map",
type: "POST",
data: "",
headers: {"X-CSRF-TOKEN": $("meta[name="csrf-token"]").attr("content")},
success: console.log("AJAX END")
});
Маршрут
Route::post('/map', 'MapController@NewChart');
Функция контроллера
public function NewChart()
{
echo "<script>console.log('NewChart function called');</script>";
$chart = new chart;
$chart->labels(['Q1', 'Q2', 'Q3', 'Q4']);
$chart->dataset('2019', 'line', [100, 10, 4, 10]);
$chart->dataset('2018', 'line', [5, 5, 5, 5]);
return view('map', ['chart' => $chart]);
}
Журнал консоли из функции NewChart не запускается, поэтому вызов AJAX никогда не достигает функции.
Я надеюсь, что кто-нибудь скажет мне, что я здесь делаю неправильно.