РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
38 of 1392 menu

Директива checked

Директива checked в Blade позволяет условно добавить атрибут checked к элементу input с типами checkbox или radio. Она принимает одно выражение и, если оно истинно, добавляет атрибут checked к элементу. Это особенно удобно при работе с формами, где нужно сохранять состояние элементов после отправки данных.

Синтаксис

<input type="checkbox" @checked($condition)>

Где $condition - выражение, которое проверяется на истинность. Если выражение истинно, атрибут checked будет добавлен к элементу.

Пример

Давайте создадим форму с чекбоксом, который будет отмечен, если пользователь согласен с условиями:

<form method="POST" action="/save"> @csrf <input type="checkbox" name="terms" @checked(old('terms', false))> <label>I agree to the terms</label> <button type="submit">Submit</button> </form>

Пример

Используем директиву checked для отображения ранее выбранных значений в списке радио-кнопок:

@php $userGender = 'female'; $genders = ['male', 'female', 'other']; @endphp @foreach ($genders as $gender) <input type="radio" name="gender" value="{{ $gender }}" @checked($gender === $userGender)> <label>{{ $gender }}</label> @endforeach

Результат выполнения кода:

<input type="radio" name="gender" value="male"> <label>male</label> <input type="radio" name="gender" value="female" checked> <label>female</label> <input type="radio" name="gender" value="other"> <label>other</label>

Пример

Покажем, как использовать директиву checked с массивом выбранных значений для множественных чекбоксов:

@php $userPermissions = ['read', 'write']; $allPermissions = ['read', 'write', 'delete', 'admin']; @endphp @foreach ($allPermissions as $permission) <input type="checkbox" name="permissions[]" value="{{ $permission }}" @checked(in_array($permission, $userPermissions))> <label>{{ $permission }}</label> @endforeach

Результат выполнения кода:

<input type="checkbox" name="permissions[]" value="read" checked> <label>read</label> <input type="checkbox" name="permissions[]" value="write" checked> <label>write</label> <input type="checkbox" name="permissions[]" value="delete"> <label>delete</label> <input type="checkbox" name="permissions[]" value="admin"> <label>admin</label>

Пример

Используем директиву checked с условием из контроллера для отображения настроек пользователя:

<?php namespace AppHttpControllers; use AppModelsUser; class SettingsController extends Controller { public function edit($id) { $user = User::find($id); return view('settings', [ 'notificationsEnabled' => $user->notifications, 'emailSubscribed' => $user->email_subscription ]); } } ?>
<form method="POST" action="/settings/update"> @csrf <input type="checkbox" name="notifications" @checked($notificationsEnabled)> <label>Enable notifications</label> <input type="checkbox" name="email_subscription" @checked($emailSubscribed)> <label>Subscribe to emails</label> <button type="submit">Save settings</button> </form>

Смотрите также

  • директива selected,
    которая условно устанавливает атрибут selected для элементов select
  • директива disabled,
    которая условно устанавливает атрибут disabled для элементов форм
  • директива required,
    которая условно устанавливает атрибут required для полей ввода
  • директива if,
    которая выполняет условное отображение блоков в Blade
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить