我已将控制器中的'$ passValue'列表传递给我的视图表单。现在我必须将此列表设置为$ emailList,这也是我的模型中定义的列表。如何才能完成? 我的观点代码是:
<?php
$val=array();
foreach($passValue as $par){
array_push($val,$par);
}
echo $form->hiddenField($model,'emailList ',$val,array('size'=>50,'maxlength'=>50,'readonly'=>'readonly')); ?>
我的js代码:
$.ajax({
type: 'POST',
url: '<?php echo CController::createUrl('client/sendMail'); ?>',
data:{ids:selectbox},
dataType:'json',
success:function(data){
if (data.status == 'failure')
{
$('#dialogMail div.divForForm').html(data.div);
}
},
error: function(data) {
alert("Error occured.please try again");
}
});
我的控制器代码打开我的对话框:
if (Yii::app()->request->isAjaxRequest)
{
echo CJSON::encode(array(
'status'=>'failure',
'div'=>$this->render('_compose', array('passValue '=>$passValue ,'model'=>$model), true)));
exit;
}
答案 0 :(得分:1)
您可以使用html选项指定值。但是在这里你要分配一个数组。首先,您需要更改字符串中的数组,然后您可以分配。使用json_encode将数组更改为string或implode函数以将字符串转换为字符串。
<?php
echo $form->hiddenField($model,'emailList',array('size'=>50,'maxlength'=>50,'readonly'=>'readonly','value'=>$val));
?>