使用 laravel 验证方法验证循环内的多个 select 框
Validating multiple select box inside loop using laravel validation method
我有多个 select 框在一个表单的循环内具有相同的名称。我添加了 laravel 验证来检查 select 框 select 是否被编辑。但是所有 select 框都显示验证错误消息。请检查所附图片。任何帮助,将不胜感激。
cart.blade.php
@forelse($carts as $key => $cart)
<div class="col-sm-4 col-sm-4-booking1 form-group {{ $errors->has('guest.*.sleeps') ? ' has-error' : '' }}">
<label>Sleep(s)</label>
<select class="form-control form-control-booking1 jsBookCalSleep" name="guest[{{ $cart->_id }}][sleeps]">
<option value="">Choose Sleep(s)</option>
@for($i = 1; $i <= 30; $i++)
<option value="{{ $i }}" @if($i == $cart->sleeps) selected @endif>{{ $i }}</option>
@endfor
</select>
@if ($errors->has('guest.*.sleeps'))
<span class="help-block"><strong>{{ $errors->first('guest.*.sleeps') }}</strong></span>
@endif
</div>
@empty
<p>No bookings in your cart</p>
@endforelse
CartController.php
public function store(CartRequest $request)
{
dd($request->all());
}
CartRequest.php
public function rules()
{
return [
'guest.*.sleeps' => 'required|not_in:0'
];
}
试试这些
@php
$inputName='guest.'.$cart->_id.'.sleeps';
@endphp
@if ($errors->has($inputName))
<span class="help-block"><strong>{{ $errors->first($inputName) }}</strong></span>
@endif
我没有测试过,
如果不工作让我知道
我有多个 select 框在一个表单的循环内具有相同的名称。我添加了 laravel 验证来检查 select 框 select 是否被编辑。但是所有 select 框都显示验证错误消息。请检查所附图片。任何帮助,将不胜感激。
cart.blade.php
@forelse($carts as $key => $cart)
<div class="col-sm-4 col-sm-4-booking1 form-group {{ $errors->has('guest.*.sleeps') ? ' has-error' : '' }}">
<label>Sleep(s)</label>
<select class="form-control form-control-booking1 jsBookCalSleep" name="guest[{{ $cart->_id }}][sleeps]">
<option value="">Choose Sleep(s)</option>
@for($i = 1; $i <= 30; $i++)
<option value="{{ $i }}" @if($i == $cart->sleeps) selected @endif>{{ $i }}</option>
@endfor
</select>
@if ($errors->has('guest.*.sleeps'))
<span class="help-block"><strong>{{ $errors->first('guest.*.sleeps') }}</strong></span>
@endif
</div>
@empty
<p>No bookings in your cart</p>
@endforelse
CartController.php
public function store(CartRequest $request)
{
dd($request->all());
}
CartRequest.php
public function rules()
{
return [
'guest.*.sleeps' => 'required|not_in:0'
];
}
试试这些
@php
$inputName='guest.'.$cart->_id.'.sleeps';
@endphp
@if ($errors->has($inputName))
<span class="help-block"><strong>{{ $errors->first($inputName) }}</strong></span>
@endif
我没有测试过, 如果不工作让我知道