我选择在Form Helper中使用标记而不是form_dropdown()
,因为我无法将类属性设置为<option>
标记。
所以我有一个<select>
,并希望将项目设为"selected"
。这些数据来自数据库。我怎么设置这个?
我看到了这个:set_select()
但我无法开展工作。
有没有人有解决方案?
答案 0 :(得分:4)
来自docs on the form_dropdown
function:
form_dropdown()
允许您创建标准下拉字段。第一个参数将包含字段的名称,第二个参数将包含一个关联的选项数组,第三个参数将包含您希望选择的值。
echo form_dropdown('shirts', $options, 'large'); // 'large' will be "selected"
答案 1 :(得分:2)
要记住两件事:首先,您必须使用验证类才能使用set_select()
函数。其次,您必须将数据库信息传递给该函数,如下所示:
<select name="myselect">
<option value="one" <?php echo set_select('myselect', 'one', ($model->selection == 'one')); ?> >One</option>
<option value="two" <?php echo set_select('myselect', 'two', ($model->selection == 'two')); ?> >Two</option>
<option value="three" <?php echo set_select('myselect', 'three', ($model->selection == 'three')); ?> >Three</option>
</select>
如果$model->selection
为two
,则会在上面的示例中选择第二个选项。
答案 2 :(得分:-1)
> ERROR Error: If ngModel is used within a form tag, either the name
> attribute must be set or the form
> control must be defined as 'standalone' in ngModelOptions.
>
> Example 1: <input [(ngModel)]="person.firstName" name="first">
> Example 2: <input [(ngModel)]="person.firstName" [ngModelOptions]="{standalone: true}">