如何使用yii调用重定向到另一个控制器操作视图?

时间:2013-12-06 11:54:22

标签: php yii http-redirect

如何使用yii ajax调用重定向到另一个控制器操作视图?这是我的ajax功能

function test(id) 
{  
    $.ajax({
       type: "POST",      
       data: "id="+id,
       url: "<?php echo Yii::app()->createUrl('controller/action'); ?>",
       success: function (msg){ }   
    });  
}

从我的动作中我想在另一个窗口中调用一个视图。

  public function action
  {
     //doing some php code here to create $dataProvider
     $this->render('view',array('dataProvider'=>$dataProvider),array('target'=>'_blank'));
  }
这可能吗?请帮忙

2 个答案:

答案 0 :(得分:1)

您需要在Javascript中进行重定向,例如在success函数中。您可以将URL作为PHP动作的输出传递,然后选择它并设置window.location.href。

答案 1 :(得分:0)

最后我得到了我的问题的答案..

我正在使用CHtml::link而非使用ajax

查看

CHtml::link(
        CHtml::encode('id'), 
        array('controller/action','id'=>'id'),
        array('href'=>'/index.php/controller/action',
        'target'=>'_blank')
     )

控制器

public function action
  {
     //doing some php code here to create $dataProvider  
     $this->render('view',array('dataProvider'=>$dataProvider));
  }