Учебники

Ларавел — Аякс

Ajax (асинхронный JavaScript и XML) представляет собой набор методов веб-разработки, использующих множество веб-технологий, используемых на стороне клиента для создания асинхронных веб-приложений. Импортируйте библиотеку jquery в ваш файл представления, чтобы использовать функции jjery ajax, которые будут использоваться для отправки и получения данных с помощью ajax с сервера. На стороне сервера вы можете использовать функцию response () для отправки ответа клиенту, а для отправки ответа в формате JSON вы можете связать функцию response с помощью функции 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 — После успешного выполнения вы получите следующий вывод —

AjaxController

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

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

приложение / Http / Контроллеры / 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 / rout.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 — После нажатия кнопки результат будет выглядеть, как показано на следующем рисунке.