2010-05-18 90 views
0

我有一个包含表单的Portlet。现在我想达到的是以下内容。提交表单时调用Portlet中的方法

1)一种Porlet含有形式经由

<?php $this->widget('form'); ?> 

2称为页面内)的用户填写此形式和点击提交“提交按钮应该是一个AJAX键” 3)当提交已被按下,表单应该调用表单portlet类中的方法,并且表单应该被替换为谢谢信息。 4)我只希望portlet中的当前视图替换为另一个视图。

我的portlet类看起来像这样

Yii::import('zii.widgets.CPortlet'); 

class Polls extends CPortlet{ 

    public $usr_id=''; 


    public function init(){ 

     $cs = Yii::app()->clientScript; 
     $cs->registerCoreScript('jquery'); 
     parent::init(); 
    } 

    protected function renderContent(){  
     $this->render('form'); 
    } 

    public function update(){ 
     $this->render('thankyou'); 
    } 
} 

} 

回答

1

恐怕你不能门户做只是因为门户本身无法通过URL来达到。您必须创建如下所示的代理控制器操作:

ProxyController extends CController { 
    function actionPortlet(){ 
    $portlet = new Polls(); 
    $portlet->usr_id = 123; 
    $portlet->update(); 
    } 
}