我有此代码来生成ActiveCheckBoxlist:
<?php
echo CHtml::activeCheckBoxList($model,
'selected',
CHtml::listData(AuthItem::model()->findAllByAttributes(array('type'=>2)),
'name',
'name'),
array('unCheckValue'=>'Off',
'labelOptions'=>array('style'=>'display:inline'))
);
?>
但是,没有呈现隐藏的字段,并且在提交表单时,仅发送检查字段的值$ _post ['user''] ['selected']。
我以自己的方式解决了它,可能会切换到下拉框,将其更改为1个值,但这仍然很有趣。有什么想法吗?
第一次尝试:好,所以我试图将其更改为
'uncheckValue'=>'Off'
的确是,使用它命名为uncheckvalue,它被生成为复选框的属性,现在不是,但是每个复选框仍然没有一个隐藏字段。
但是,生成了一个隐藏的字段,但整个CheckboxList仅生成一个。我希望它会为每个复选框生成一个隐藏的字段,在提交时Sothat并使用IE有未选择的复选框。id ='option_1',在$ _post我会找到'opote_1'=>'off'?
以便我可以做一个foreach并做:(伪代码)
foreach(Checkbox)
if(Value = 'Off') deactivate();
else activate()
将 unCheckValue
更改为 uncheckValue
因为与错字unCheckValue
成为复选框的属性。
<?php
echo CHtml::activeCheckBoxList($model,
'selected',
CHtml::listData(AuthItem::model()->findAllByAttributes(array('type'=>2)),
'name',
'name'),
array('uncheckValue'=>'Off',
'labelOptions'=>array('style'=>'display:inline'))
);
?>