我的目标是,当我点击提交按钮时,所有字段都将进行验证,并在每个输入字段的下面自动显示验证错误,目前,当我尝试在不向字段中添加任何数据的情况下提交表单时,只有第一个输入字段有一条错误消息显示在输入字段的下面,而其他字段则没有,只有在我提交表单并单击输入字段后,消息才会显示。
我试着在这里寻找解决方案,但不幸的是,它对我不起作用。
- 如何在Laravel中验证数组
- 如何在Laravel中验证整数数组
- 验证Laravel 5.7中形式的输入数组
我有一个表单,看起来像这个
<div class="form-group">
<input type="text" name="ref_name[]">
</div>
<div class="form-group">
<input type="text" name="ref_name[]">
</div
<div class="form-group">
<input type="text" name="ref_name[]">
</div
<div class="form-group">
<input type="text" name="ref_name[]">
</div
<div class="form-group">
<input type="text" name="ref_name[]">
</div>
这是我请求类的规则/代码
'ref_name' => 'array',
'ref_name.*' => 'required|distinct'
我在用这个https://packagist.org/packages/proengsoft/laravel-jsvalidation作为我的laravel项目的验证插件。
我正在进行的laravel版本项目是5.2
要获得输入数组的第一个验证错误:
{{ $errors->first('ref_name.*') }}
检查输入数组中是否存在错误:
@if($errors->has('ref_name.*'))
<h1>There is an error in your input array</h1>
<ul>
@foreach($errors->get('ref_name.*') as $errors)
@foreach($errors as $error)
<li>{{ $error }}</li>
@endforeach
@endforeach
</ul>
@endif
其他示例:
@error('ref_name.*')
<div class="alert alert-danger">{{ $message }}</div>
@enderror
你也可以得到错误:
echo $errors->first('ref_name.0');