如何验证 laravel 中的复选框数组?
Posted
技术标签:
【中文标题】如何验证 laravel 中的复选框数组?【英文标题】:How do I validate a checkbox array in laravel? 【发布时间】:2020-06-26 04:42:45 【问题描述】:我一直在尝试验证所有 10 个复选框数组项,但我似乎无法找到或理解如何使用 Laravel 验证器来验证复选框数组。 下面的代码是我的数组 html。
<div id="CLAagree" style="display: none;">
<div class="form-group form-check">
<div class="col-sm-2">
<div class="checkbox checkbox-green ck-button">
<input type="checkbox" class="form-check-input" oninput="this.className = ''" name="claAgree[]" id="CLAagreeCB1" onclick="saveOnboard()" >
</div>
</div>
</div>
我已尝试获取有关此的所有信息,但由于某种原因,我似乎无法理解验证中的数组。 我知道添加“必需”会使输入成为必需,但我有 10 个,所以至少需要一个,但我需要 10 个。有没有人有任何选择?我只是在这一点上迷路了哈哈
$rules = array(
"claAgree" => "required",
"claAgree.*" => "required",
);
$validation = Validator::make($request->all(),$rules);
if($validation->fails()) return back()->with('error',$validation->messages()->first());
Here is a link to show how the array is posted
【问题讨论】:
laravel.com/docs/5.4/validation#conditionally-adding-rules ,你可以在这里查看定义如何验证数组 【参考方案1】:您可以这样做,检查您请求的数组名称 (claAgree.*.claAgree), 然后定义输入值,如果相同,则可以使用相同的值
$rules = array(
"claAgree" => "required",
"claAgree.*.claAgree" => "required",
);
$validation = Validator::make($request->all(),$rules);
if($validation->fails()) return back()->with('error',$validation->messages()->first());
【讨论】:
当我尝试我得到这个错误。 "claAgree.0.claAgree 字段是必需的。"以上是关于如何验证 laravel 中的复选框数组?的主要内容,如果未能解决你的问题,请参考以下文章
当当前输入等于数组内的值时,Laravel 验证 required_if(带有输入文本的复选框)