我正在尝试使用old()从多选下拉列表中保留输入。无论如何,要获得突出显示的选定值
<select name="contract_id[]" class="form-control selectpicker" multiple>
@foreach($contracts as $contract)
@if( ( isset($usercontract) && $usercontract->where('id' , $contract->id) != "[]" ) ||
( count($errors) && old('contract_id[]') == $contract->id ) )
<option value="{{ $contract->id }}" selected="">{{ $contract->name }}</option>
@else
<option value="{{ $contract->id }}">{{ $contract->name }}</option>
@endif
@endforeach
</select>
在php中找到了_array()函数中使用的解决方案。
<select name="contract_id[]" class="form-control selectpicker" multiple>
@foreach($contracts as $contract)
@if( ( isset($usercontract) && $usercontract->where('id' , $contract->id) != "[]" ) ||
( count($errors) && in_array($contract->id, old('contract_id')) == $contract->id ) )
<option value="{{ $contract->id }}" selected="">{{ $contract->name }}</option>
@else
<option value="{{ $contract->id }}">{{ $contract->name }}</option>
@endif
@endforeach
</select>