在多个复选框中选中任何特定复选框,然后在Laravel中需要另一个验证文本字段。
我有多个复选框
<label class="checkbox-inline" for="item_1">
<input name="control_4[]" id="item_1" value="1" type="checkbox"> A
</label>
<label class="checkbox-inline" for="item_2">
<input name="control_4[]" id="item_2" value="2" type="checkbox"> B
</label>
<label class="checkbox-inline" for="item_3">
<input name="control_4[]" id="item_3" value="3" type="checkbox"> C
</label>
<input type="text" name="try">
如果我选择item_2和3,那么如果第3项存在于control_4数组中,则输入框需要在输入框中不进行验证。
$this->validate($request, [
'control_4' => 'required',
'try' => 'required'
]);
如何在Laravel 5.5中进行验证
首先,您需要在try输入上定义规则,如:
$this->validate($request, [
'control_4' => 'required',
'try' => 'partialRequired'
]);
然后,您必须定义partialRequired方法的定义:
class customValidation extends Validator
{
public function validatePartialRequired($attribute, $value, $parameters)
{
if(in_array('3',$this->data['control_4']) && empty($value))
{
return false;
}
return true;
}
}