Laravel - проверка сохранения выбранной опции - PullRequest
0 голосов
/ 18 мая 2018

У меня есть форма, которая имеет некоторое подтверждение.При возникновении одной из этих ошибок значение поля ввода будет сохранено с использованием {{ old('name') }} в поле значения ввода.Но это только для обычных полей ввода текста.

Моя проблема.

Как можно сохранить выбранное значение поля выбора, используя тот же метод?Так что если пользователь столкнется с ошибкой, его выбранная опция все равно будет выбрана?

Код, где выбрано

<select name="period_id" id="" class="form-control {{ $errors->has('period_id') ? ' is-invalid' : '' }}">
   <option value="">Choose a period...</option>
     @foreach($plans as $plan)
     <option value="{{ $plan->id }}">
        {{ $plan->name }}
     </option>
     @endforeach
</select>

@if($errors->has('period_id'))
 <p style="color: red;"> {{ $errors->first('period_id') }}</p>
@endif

РЕДАКТИРОВАТЬ

array:9 [▼
  "_token" => "flBWl0qRV7GnMYL0D90G"
  "name" => "Product name"
  "description" => "Descriptiobn"
  "price" => "1,000"
  "productable_type" => "App\Plan"
  "period_id" => "2"
  "periodically_price" => "25"
  "composer_package" => "asdasdsasasad"
  "thumbnail" => UploadedFile {#654 ▶}
]

Ответы [ 2 ]

0 голосов
/ 18 мая 2018

Вы можете попробовать это через помощника по формам Laravel

{!! Form::select("input_name", $optionForSelect, old('input_name', isset($valueInput) ? $valueInput : ''), ['class' => 'form-control', 'id' => 'input_name']) !!}

0 голосов
/ 18 мая 2018

Вы можете проверить каждый из параметров и добавить атрибут selected к старому.

<option value="{{ $plan->id }}" {{ $plan->id === old('planid') ? 'selected' : '' }}>

...