我正在验证我的注册表。
如果输入是一个常规输入,我可以填充前面的值,如果它像这样失败
<input type="tel" name="phone" value="{{old('phone')}}">
如何填充选择选项上的值?
<div class="input--select">
<label>Age Range <span>*</span></label>
<select name="age_range" class="age-range" value="{{old('age_range')}}" required>
<option selected disabled>Select your age range</option>
<option value="18-25">18-25</option>
<option value="26-35">26-35</option>
<option value="36-45">36-45</option>
<option value="46-55">46-55</option>
<option value="56-65">56-65</option>
<option value="66-75">66-75</option>
<option value="75+">75+</option>
</select>
@if ($errors->has('age_range')) <span class="error-message">Age range option is required.</span> @endif
</div>
4条答案
按热度按时间g2ieeal71#
我建议把你所有的年龄放在一个数组中,并将该数组传递给视图:
HTML中的变化:
因此,在第1点中,您始终将
selected
应用于第一个选项。假设您的旧值为
46-55
你的html看起来像:
如果你看一下上面的html,有2个选择的选项。Html总是选择第一个,这就是造成问题的原因。
第1点将检查是否有旧值可用,它不会将
selected
应用于第一个占位符选项。pes8fvy92#
试试上面的代码。
rks48beu3#
然后
这适用于刀片模板第一次加载并且没有“旧”值的情况,并且您需要针对该情况预定义所选选项(即66)。
rslzwgfq4#
这也很有效:
这将检查
gender
的old value
值和填充的select输入。如果您使用foreach
填充输入类型,这也可以正常工作。