Ajax (асинхронный JavaScript и XML) – это набор методов веб-разработки, использующих множество веб-технологий, применяемых на стороне клиента для создания асинхронных веб-приложений. Импортируйте библиотеку jquery в файл представления, чтобы использовать функции ajax jquery, которые будут использоваться для отправки и получения данных с сервера с использованием ajax. На стороне сервера вы можете использовать функцию response() для отправки ответа клиенту, а для отправки ответа в формате JSON вы можете связать функцию ответа с функцией json().

Синтаксис функции json()

json(string|array $data = array(), int $status = 200, array $headers = array(), int $options)

Пример

Шаг 1. Создайте файл представления с именем resources/views/message.php и скопируйте в этот файл следующий код.

<html> <head> <title>Ajax Example</title> <script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"> </script> <script> function getMessage() { $.ajax({ type:'POST', url:'/getmsg', data:'_token = <?php echo csrf_token() ?>', success:function(data) { $("#msg").html(data.msg); } }); } </script> </head> <body> <div id = 'msg'>This message will be replaced using Ajax. Click the button to replace the message.</div> <?php echo Form::button('Replace Message',['onClick'=>'getMessage()']); ?> </body> </html>

Шаг 2. Создайте контроллер с именем AjaxController, выполнив следующую команду.

php artisan make:controller AjaxController --plain

Шаг 3 — после успешного выполнения вы получите следующий вывод —

Шаг 4. Скопируйте следующий код в

Файл app/Http/Controllers/AjaxController.php.

приложение/Http/Controllers/AjaxController.php

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller; class AjaxController extends Controller { public function index() { $msg = "This is a simple message."; return response()->json(array('msg'=> $msg), 200); } }

Шаг 5. Добавьте следующие строки в app/Http/routes.php.

приложение/Http/routes.php

Route::get('ajax',function() { return view('message'); }); Route::post('/getmsg','AjaxController@index');

Шаг 6. Посетите следующий URL-адрес, чтобы протестировать функциональность Ajax.

http://localhost:8000/ajax

Шаг 7. Вы будете перенаправлены на страницу, где увидите сообщение, как показано на следующем рисунке.

Шаг 8. Вывод будет выглядеть так, как показано на следующем изображении, после нажатия кнопки.

Первоначально опубликовано на https://www.tutorialspoint.com.