symfony - Symfony - 如果选中该复选框,则禁用必填字段
问题描述
我有一个关于 Symfony 的表格。我的表单由文本输入和复选框组成。
如果用户选中该框,则输入文本被禁用(我使用 javascript)。但是,如果用户不选中该框,则他必须填写输入文本。如果他勾选方框,他不必这样做。
这是我的表格:
$formBuilder
->add('text', TextType::class,array(
'required' => true,
'constraints' => array(
new NotBlank()
)))
->add('box', CheckboxType::class, array(
'mapped' => false,
'label' => 'Box'
))
;
如果选中该框,我正在寻找一种禁用文本输入验证的方法。如果选中复选框,如何忽略输入文本验证?
你知道怎么做吗?谢谢!
解决方案
在这种情况下,您需要自定义约束。您应该使用 javascript 将字段标记为非必填项并显示星号 (*) 为必填项。对于后端,您需要创建自定义约束。在此处查看 symfony 文档:https ://symfony.com/doc/current/validation/custom_constraint.html
推荐阅读
- infer.net - GaussianProductOp.ProductAverageConditional - has quality band Experimental which is less than the recommended quality band (Preview)
- sql - 复杂的 SQL 查询请求
- jenkins - 在 Jenkins 管道中运行时出现 sfdx 错误
- angular - 角度 6 中的搜索过滤器
- c - 关于函数声明中省略return语句的问题
- excel - 根据我们可能所在的前一个月过滤12个月前的数据,而无需手动输入开始和结束日期?
- c# - 为什么我的服务器无法响应来自网络浏览器的客户端请求?
- r - 如何在ggplot2的文本中下标字母或数字
- java - 如何使用 selenium 检查警报的可见性
- reactjs - 无法在反应js中获取道具中的数据