我在Laravel中构建了一个数据库搜索引擎,我在让Laravel在下拉列表中选择之前选择的项目时遇到了一些问题。
使用模板构建器选项我可以像这样选择,它可以完成我想要它做的事情:
{{ Form::select('bomserial', $bomserials, Input::get('bomserial'), array('class' => 'pure-input-1', 'tabindex' => '3')) }}
"输入::获取(' bomserial')"在提交表单后,它会在下拉列表中重新选择之前选择的选项,但以这种方式构建输入意味着我无法使用"选择已禁用的"选项,所以我选择构建像这样的选择:
<select name="bomserial" class="pure-input-1" tabindex="3">
<option selected disabled>BOM Serial</option>
@foreach ($bomserials as $bomserial)
<option value="{{ $bomserial->serial }}">{{ $bomserial->serial }} - {{ $bomserial->job_desc }}</option>
@endforeach
</select>
这会产生更好看的菜单并允许使用默认选项,但现在我无法再在提交表单后重新选择上一个选项。我怎么能绕过这个?
答案 0 :(得分:0)
由于您不再使用“表单”构建器,因此您必须手动控制选择正确的选项。
根据您现有的逻辑,您正在查看类似的内容:如果输入中没有bomserial,请选择占位符;如果bomserial在输入中,请选择与输入匹配的bomserial选项。
<select name="bomserial" class="pure-input-1" tabindex="3">
<option {{ Input::has('bomserial') ? '' : 'selected' }} disabled>BOM Serial</option>
@foreach ($bomserials as $bomserial)
<option value="{{ $bomserial->serial }}" {{ Input::get('bomserial') == $bomserial->serial ? 'selected' : '' }}>{{ $bomserial->serial }} - {{ $bomserial->job_desc }}</option>
@endforeach
</select>