首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Yii2需求选择一个或多个复选框FormBuilder

Yii2需求选择一个或多个复选框FormBuilder
EN

Stack Overflow用户
提问于 2014-10-25 02:51:41
回答 1查看 1.3K关注 0票数 3

我在"Yii2 krajee FormBuilder“中创建了一个注册表格。它包含两个复选框。必须至少选择其中一个。必须在客户端执行验证,以避免页面超载。如果Yii2包含将所需规则和whenClient分配到复选框的选项,那么一切都会很容易--不幸的是,这是不可能的。例如,对于其他字段(文本框、选择框),可以使用以下代码:

型号:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$public $module1;
$public $module2;

  'module1'=>[
                'type'=>Form::INPUT_CHECKBOX,
                'name'=>'ak1',
                'label'=>'<b>'.Yii::t('app','register.module1').'</b>' ],

  'module2'=>[
                'type'=>Form::INPUT_CHECKBOX,
                'name'=>'ak2',
                'label'=>'<b>'.Yii::t('app','register.module2').'</b>' ]

'textbox1'=>[
                    'type'=>Form::INPUT_TEXTBOX,
                    'name'=>'tx1',
                    'label'=>'<b>'.Yii::t('app','register.tx1').'</b>' ]
[...]


     [[  'textbox1', 'texbox2', ],'required','whenClient'=> "function (attribute, value) { return  $('#registerform-textbox1').is(':checked') == false && $('#registerform-textbox2').is(':checked') == false;}" 
],

它适用于文本框的..but。不能将复选框分配给所需

我使用了这个,但是在这个例子中,页面被重新加载。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
['module1',function ($attribute, $params) {
                if ($this->module1 == 0 && $this->module2 == 0) {
                    $this->addError($attribute, 'you have to select at least one option');
                }
            }], 

通常,复选框验证由

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public function rules () 
     {
         array ['checboxname', 'compare', 'compareValue' => true, 
               'message' => 'You must agree to the terms and conditions'], 
         ... 
     } 

但在这种情况下,您不能将规则与规则whenClient (负责函数指定的客户端验证)进行组合。我该如何解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2017-10-26 06:04:20

我不太清楚你在尝试什么,但我认为你会这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
['checkbox1', 'required', 'when' => function($model) {
    return $model->checkbox2 == false;  
  }
],
['checkbox2', 'required', 'when' => function($model) {
    return $model->checkbox1 == false;  
  }
],
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26561587

复制
相关文章
实现一个启动多个jar或多个服务的脚本
在一开始,我选择了参考网上所说的定义一个rc.local文件,修改/etc/rc.local,但发现这种方法可以实现自启动脚本,但是通常只能启动一个服务,然后后面的服务就不能启动了。这个是因为自己做了实验发现的。
路行的亚洲
2021/08/20
4.5K0
多个checkbox复选框触发点击事件
形如上面这种有list输出到前台的一组复选框,怎么点击其中一个可以触发jquery事件呢?
全栈程序员站长
2022/08/05
1.9K0
JS控制批量选择/取消复选框
场景应用:在后台分页输出查询数据(如文章、评论),往往需要进行批量删除/审核等操作。后端程序需要读取操作的ID集合进行批量处理。而前端批量选择传入ID是最方便的使用方式。而批量传入通过使用复选框的[]方式传入数组给后端就是最便捷的办法了。直接上代码:
世纪访客
2018/08/02
9.7K0
JS控制批量选择/取消复选框
Yii2 连接多个数据库
日常生活中我们一个项目一个数据库就足够了,但是难免会有意外,会使用多个数据库进行读写操作。例如:从另一个数据库导入数据到现在的数据库 今天就探讨下,Yii2.0 如何连接多个数据库
hedeqiang
2019/12/17
1.9K0
linux执行一个或多个表达式let命令
let命令是bash中用于计算的工具,用于执行一个或多个表达式,变量计算中不需要加上 $ 来表示变量。如果表达式中包含了空格或其他特殊字符,则必须引起来。
用户1685462
2021/07/24
6010
vue选择多个文件并监听选择完成
昨天我们实现了vue下获取单个文件的绝对路径,并且通过另外一个按钮将所选文件的路径显示出来。
efonfighting
2019/10/22
3.2K0
Monolith或Microservices:到底该选择哪一个?
【摘要】到底该选择Monolith还是Microservices呢?业界没有一个统一标准的答案,本文通过分析比较Monolith和Microservices的优缺点,给出了在哪些情况下,建议选择Mon
CSDN技术头条
2018/02/06
2K0
Monolith或Microservices:到底该选择哪一个?
在DataGrid中选择,确认,删除多行复选框列表
在DataGrid中选择,确认,删除多行复选框列表 Selecting, Confirming & Deleting Multiple Checkbox Items In A DataGrid (i.e. HotMail & Yahoo) Introduction Although I don't have either a Hotmail or Yahoo email account, I do have friends that do, and I have o
阿新
2018/04/13
1.7K0
map集合根据value找key(一个key或多个key)
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/163571.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/15
1.2K0
多个单细胞数据集整合的另外一个选择conos
但是现在基本上大家的单细胞转录组项目不太可能是单个样品啦,所以一定会触及到多个样品整合的问题,整合是为了尽可能的去除批次等不需要的差异但是尽可能的保留生物学差异,是一个两难问题,所以关于它的算法基本上都是发表在CNS及其子刊。如下所示:
生信技能树
2022/04/14
1.6K0
多个单细胞数据集整合的另外一个选择conos
如何选择一个适合自己公司需求的六西格玛项目?
六西格玛是一种常用的质量管理方法,它致力于提升产品、服务和流程的质量,以满足客户的需求。所以,在选择一个适合自己的六西格玛项目之前,需要根据公司的需求和目标进行仔细的分析和评估。天行健简析如下:
用户9972271
2023/03/16
2290
mysql语句根据一个或多个列对结果集进行分组
接下来我们使用 GROUP BY 语句 将数据表按名字进行分组,并统计每个人有多少条记录:
用户4988376
2021/07/16
3.6K0
tomcat不能运行或共存多个项目
我在Tomcat下部署了两个项目,但是一个可以运行,另一个不可以,第一感觉是内存问题,给tomcat多分配了内存.但是没有作用. 原因是少了webAppRootKey这个参数,需要在各自的web.xml下添加 <context-param>        <param-name>webAppRootKey</param-name>        <param-value>socialmedia</param-value>   </context-param> 但是我添加后,只能运行一个,其他两个运行不了。原
冷冷
2018/02/08
9920
C语言 | 选择1或2输出max或min
例36:C语言实现输入两个整数,然后让用户选择1或者2,选择1是调用max,输出两者中的大数,选择2是调用min,输出两者中的小数。
小林C语言
2020/12/16
1.2K0
C语言 | 选择1或2输出max或min
PaaS、CaaS或FaaS,如何选择?
企业在为基于容器的应用程序选择云计算架构时需要了解关键问题和注意事项。在考虑要运行的云计算架构时,开发人员、工程师、架构师和IT领导者需要考虑许多平台、性能、法规和其他考虑因素。
静一
2020/03/25
1.7K0
PaaS、CaaS或FaaS,如何选择?
如何选择满足需求的SQL on Hadoop/Spark系统
作者|梁堰波 感谢“明略数据”的投稿,只要是“干货”大数据文摘就愿意发表,也欢迎各位读者参与评论,点击文末右下角“写评论”即可。 在批处理时代,Hive一枝独秀;在实时交互式查询时代,呈现出的是百花齐放的局面。Hive onTez, Hive on Spark, Spark SQL, Impala等等,目前看也没有谁干掉谁的趋势。引用今年图灵奖得主Michael Stonebraker的话说,现在的数据库领域已经不是”one size fit all”的时代了。那么面对这么多系统,我们改如何选择呢?这里谈谈
大数据文摘
2018/05/21
1.2K0
点击加载更多

相似问题

带选择多个的Angular 2 FormBuilder

10

使用formBuilder自动选择多个下拉列表

13

带有FormBuilder的离子型2多个复选框

10

重写symfony 2 formbuilder中的多个选择

20

使用FormBuilder字段所需的EntityType多个复选框

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文