我正在使用 CakePHP3
我无法解读有关使用单选按钮创建结果列表的文档。
我尝试过这种方式:
foreach ($userGroups as $group_id => $group) {
echo $this->Form->radio("UserGroup.$group_id.id", ['value' => $group_id, 'label' => $group]);
}
这表示您所需要做的就是将类型设置为 radio 。但我检查了 api,它 looks like it will unset the type .
不管怎样,我尝试过
echo $this->Form->select("user_circle_id", $userGroups, ['type' => 'radio']);
没有任何作用。
请指教。
更新:
$userGroups = [1 => 'Group 1', 2 => 'Group 2']; // basically primary key is keys and the display fields are the values.
最佳答案
使用以下语法:
$selectedStatus = 1;
$attributes = array('legend'=>false,'value'=>$selectedStatus,'class'=>'sortByStatusCourse','name'=>'sortByStatusCourse');
$options = array("1"=>"Active","0"=>"Inactive");
echo $this->Form->radio('is_active', $options,$attributes);
代码解释: 我们将参数传递给 cakePHP 核心,以便它将输出 HTML 中的单选按钮。
echo $this->Form->radio :
这里第一个参数是数据库中字段的名称。第二个参数是单选按钮的选项是什么,它的值和文本。第三个参数是它的属性是什么,比如它的默认值值
在这里我明确地将它设置为1
因此它已经用 Active
文本勾选了 radio 。
根据您的代码: echo $this->Form->radio("UserGroup.$group_id.id", ['value' => $group_id, 'label' => $group]);
我认为参数的顺序是错误的,因为您在第二个参数中传递了 VALUE
,而这应该是第三个参数。检查我的代码。
关于forms - 使用 FormHelper 显示单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28312755/