当前位置:  开发笔记 > 编程语言 > 正文

单选按钮组在yii2中的单独位置

如何解决《单选按钮组在yii2中的单独位置》经验,为你挑选了1个好方法。

所以,我想在两个单独的地方有两个单选按钮,我一直在努力寻找解决方案,每个人都建议使用radiolist,这在我的情况下是不可能的.

如果我这样说(work_part_time按钮):(下)

field($model, 'work_part_time')->radio(['label' => 'yes', 'value' => 1])?>
-
field($model, 'hour_week')->textInput(['type' => 'number', 'placeholder' => 'Hour/Week'])->label(false)?>
field($model, 'part_time_rate')->textInput(['type' => 'number', 'placeholder' => 'rate/hour(SGD)'])->label(false)?>
field($model, 'work_part_time')->radio( [0 => 'No'])->label('No')?>

field($model, 'work_part_time')->radio(['label' => 'yes', 'value' => 1])?>
-
field($model, 'hour_week')->textInput(['type' => 'number', 'placeholder' => 'Hour/Week'])->label(false)?>
field($model, 'part_time_rate')->textInput(['type' => 'number', 'placeholder' => 'rate/hour(SGD)'])->label(false)?>
field($model, 'work_part_time')->radio( [0 => 'No'])->label('No')?>

我只能得到0值.

有人找到了解决方案吗?



1> Joe Miller..:

Yii将根据存储属性的值为单选按钮分配一个选中或未选中的值,因此如果该值为0,它将检查具有值0的按钮.您的问题似乎是Yii自动隐藏的输入产生.正如其他人所建议的那样,null如果您想为同一个字段添加多个单选按钮,则需要将其设置为.

如果用户检查另一个按钮,则所有其他具有相同名称的单选按钮将被取消选中.Yii在创建按钮时自动生成属性的名称.尝试使用这些单选按钮:

field($model, 'work_part_time')->radio(['label' => 'Option 1', 'value' => 1, 'uncheck' => null]) ?>
field($model, 'work_part_time')->radio(['label' => 'Option 2', 'value' => 0, 'uncheck' => null]) ?>
field($model, 'work_part_time')->radio(['label' => 'Option 3', 'value' => 2, 'uncheck' => null]) ?>
field($model, 'work_part_time')->radio(['label' => 'Option4', 'value' => 3, 'uncheck' => null]) ?>

每个按钮都需要一个不同的值,这是保存记录时将存储在您的字段中的值.

只能检查一个按钮,因此如果您有多个按钮具有相同的值和相同的名称(如示例中所示),则只会检查该组中的最后一个按钮.我不知道这方面的方法.我建议您使用将表单拆分为逻辑部分,每个部分都与work_part_time是yes还是no有关.你似乎已经开始这样做了!

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有