我试图在用户提交后在选择字段中保留选定的选项。
我看过很多相关的问题,但没有一个答案适合我。 (所以,是的,我知道这可能是一个'重复'的问题......)
我尝试了其他类似查询的许多不同解决方案,包括使用if(isset(...))
检查是否已提交值,并且还尝试了@if(old('value') == (value)
(如图所示)下面的片段),但没有工作。
我的表单代码如下......
<select name="score" id="score">
<option value="default">Select a Finish</option>
@foreach ($scoreLeft as $score)
<option value="{{ $score->score }}" @if (old('score') == $score->score) selected @endif>
{{ $score->score }}
</option>
@endforeach
</select><br/>
<input type="submit" class="btn btn-primary" />
</form>
我认为上面的问题是'&gt;'在@if (old('score') == $score->score)
中被视为标签关闭,但我看不到任何其他方式访问'$ score'变量中的'得分'。我试过在引号和刀片中包装它,并且都没有解决问题。
我也试过@if (old('score') != 'default') selected @endif
,但在提交时,'selected'值被设置为变量中的第一个值。
有关详细信息,我想保留此输入的原因是我需要用户能够将数字输入到单独的字段(在单独的表单中)以从“选定”值中减去。
我确实期待“用JavaScript做”的答案,但是如果有一种方法可以用PHP做这件事,我更喜欢它。
如果我需要任何其他信息,请告诉我
答案 0 :(得分:1)
你检查了那个选择元素吗?
你只需要改变
<option value="{{ $score->score }}" {{ (old('score') == $score->score) ? "selected=selected" : "" }} >