如何使用视图页面中的列表设置模型中定义的列表:yii 1.1

时间:2016-01-18 08:48:10

标签: model-view-controller yii

我已将控制器中的'$ 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;               
    }

1 个答案:

答案 0 :(得分:1)

您可以使用html选项指定值。但是在这里你要分配一个数组。首先,您需要更改字符串中的数组,然后您可以分配。使用json_encode将数组更改为string或implode函数以将字符串转换为字符串。

<?php 

      echo $form->hiddenField($model,'emailList',array('size'=>50,'maxlength'=>50,'readonly'=>'readonly','value'=>$val));

     ?>