如何验证至少选中了一个复选框?
How to validate, that there is at least one checkbox checked?
我有一个表格可以用来创建一个有多个(想多少就有多少)可能答案的问题。这是图片:
单个可能答案的代码:
<div class="input-group">
{{-- Checkbox for the answer --}}
<span class="input-group-addon">
<input type="checkbox" name="answer[0][is_correct]" value="1">
</span>
{{-- Input field for the answer --}}
<input type="text" class="form-control" name="answer[0][body]">
{{-- . . . --}}
</div>
我需要验证一下,一个问题 至少存在三个 答案,并且 至少其中一个是正确的 。我怎样才能做到这一点?
为了清楚起见,我会考虑将您的答案文本字段与您的答案复选框分开。
以下内容尚未经过测试 - 但类似以下内容应该对您有所帮助?
$numAnswers = count($input->only('answers_text'));
$rules = [
'answers_checked' => 'array|min:1|max:' . $numAnswers,
'answers_text' => 'array|min:3|required',
'answers_text.*' => 'required|string',
];
$v = Validator::make($input, $rules);
if ($v->fails()) {
return response()->json($v->errors(), 422);
}
...
我有一个表格可以用来创建一个有多个(想多少就有多少)可能答案的问题。这是图片:
单个可能答案的代码:
<div class="input-group">
{{-- Checkbox for the answer --}}
<span class="input-group-addon">
<input type="checkbox" name="answer[0][is_correct]" value="1">
</span>
{{-- Input field for the answer --}}
<input type="text" class="form-control" name="answer[0][body]">
{{-- . . . --}}
</div>
我需要验证一下,一个问题 至少存在三个 答案,并且 至少其中一个是正确的 。我怎样才能做到这一点?
为了清楚起见,我会考虑将您的答案文本字段与您的答案复选框分开。
以下内容尚未经过测试 - 但类似以下内容应该对您有所帮助?
$numAnswers = count($input->only('answers_text'));
$rules = [
'answers_checked' => 'array|min:1|max:' . $numAnswers,
'answers_text' => 'array|min:3|required',
'answers_text.*' => 'required|string',
];
$v = Validator::make($input, $rules);
if ($v->fails()) {
return response()->json($v->errors(), 422);
}
...