Установите флажок в Laravel - PullRequest
0 голосов
/ 31 мая 2019

У меня есть этот код:

$arrayWithSelectedValues = [[user_id] => 3,[language_id] => 2], [user_id] => 3,[language_id] => 12]]

И у меня есть флажок:

@foreach($languages as $language)
<fieldset>
<input type="checkbox"
   class="icheckbox_square-red"
   id="input-15" name="languages[]"
   value="{{ $language->id }}">
<label for="input-15">{{ $language->name }}</label>
</fieldset>
@endforeach

Как пометить флажки как отмеченные - те, которые имеют language_id из массива = $ language-> id?

Ответы [ 2 ]

1 голос
/ 31 мая 2019

Используйте функцию php in_array (), чтобы проверить, существует ли $ language_id в массиве $ languages ​​

@foreach($languages as $language)
<fieldset>
<input type="checkbox"
   class="icheckbox_square-red"
   id="input-15" name="languages[]"
   value="{{ $language->id }}"
   @if(in_array($language_id, $languages))
      checked
   @endif
>
<label for="input-15">{{ $language->name }}</label>
</fieldset>
@endforeach
0 голосов
/ 31 мая 2019

Если $language->id значение, которое вы ищете, и вы создаете массив проверенных идентификаторов языка из $arrayWithSelectedValues, вы можете сделать:

<input
    type="checkbox"
    @if(in_array($language->id, $languages))
       checked
    @endif
>

Вы можете собрать идентификаторы языка следующим образом:

$languages = [];
foreach ($arrayWithSelectedValues as $selectedValues) {
    $languages[] = $selectedValues['language_id'];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...