我在下面有这个小部件:
<?php
echo $form->dropDownListRow($model, 'status', array('Active','Inactive'),
array(
'id'=>'status-list',
'class'=>'span5',
'data-placement'=>'right'
)
);
?>
我使用上面的方法创建一个选项,无论某些东西是否有效。 但这不会提交布尔值'true'或'false',而是字符串'Active'和'Inactive',我如何根据选择提交布尔值? 有效是真,无效是指虚假?谢谢!
答案 0 :(得分:1)
如果dropDownListRow()函数使用相同的CActiveForm :: dropDownList()
您需要提供密钥=&gt;值数组。 其中key是发送到服务器的下拉选项值,value是用户看到的选项显示字符串。
例如,尝试
<?php
echo $form->dropDownListRow($model, 'status', array('true' => 'Active', 'false' => 'Inactive'),
array(
'id'=>'status-list',
'class'=>'span5',
'data-placement'=>'right'
)
);
?>
有关详细信息,请参阅http://www.yiiframework.com/doc/api/1.1/CHtml#activeDropDownList-detail
编辑: 请注意,这会将字符串true或false发送到服务器,而不是布尔值。因此,在比较或转换值时,您需要考虑这一点。