Dcat Admin 表单字段动态显示时,如果使用了 required() 无法提交的解决办法

admin 阅读:19 2024-03-01

如题,Dcat Admin 在表单字段动态显示时,如果字段设置了 required() 必填选项,并且切换到其他条件,那么此时表单即无法正常提交,也没有错误显示。

如图,只有在缺卡或者未打卡时显示未刷卡原因字段,并且此时要求必须填写未刷卡原因。如果没填写未刷卡原因且切换到了其他类型比如:迟到时,这个表单就无法提交了,也看不到错误显示。

解决方法是用 rules() 及 required_if 结合的方式:

//错误写法:
$form->select('no_clock_in_reason','未刷卡原因')->options(config('hr.no_clock_in_reasons'))->required();//正确写法:
$form->select('no_clock_in_reason','未刷卡原因')->options(config('hr.no_clock_in_reasons'))->rules('required_if:type,no_clock_in,no_am_clock_in,no_pm_clock_in');
声明

1、部分文章来源于网络,仅作为参考。
2、如果网站中图片和文字侵犯了您的版权,请联系1943759704@qq.com处理!