Добавить атрибут к первому элементу массива в Laravel - PullRequest
0 голосов
/ 08 мая 2019

У меня есть поле выбора и я хочу получить параметры массива.

<select class="form-control select-search" name="user_select_crypto" 
        id="user_select_crypto">
    @foreach($currencies as $currency)
        <option value="{{ $currency->id }}">{{ $currency->crypto->name }}</option>
    @endforeach
</select>

Теперь я хочу сначала добавить элемент selected, как я могу это сделать?

Ответы [ 2 ]

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

Лучший способ справиться с такими проблемами - добавить значение по умолчанию <option></option>;

<select class="form-control select-search" name="user_select_crypto" id="user_select_crypto">
    <option value="" selected disabled >Select Currency</option>
    @foreach($currencies as $key => $currency)
    <option value="{{ $currency->id }}">{{$currency->crypto->name}}</option>
    @endforeach
</select>
1 голос
/ 08 мая 2019

Вы можете использовать одну из 2 вещей: либо $index => $val подход, как классический foreach.

@foreach($currencies as $i => $currency)
    <option value="{{ $currency->id }}" {{ $i == 0 ? 'selected' : ''}}>{{$currency->crypto->name}}</option>
@endforeach

Также, как и в случае с Laravel, есть переменная $loop, к которой вы можете получить доступ внутри лезвия в @foreach

@foreach($currencies as $i => $currency)
    <option value="{{ $currency->id }}" {{ $loop->first ? 'selected' : ''}}>{{$currency->crypto->name}}</option>
@endforeach

Конечно, вы можете перевести {{ $loop->first ? 'selected' : ''}} на:

@if ($loop->first) 'selected' @endif

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...