2012-12-05 90 views
1

在警予我创建项目。Yii中如何渲染视图控件

现在我想以显示新的密码插入窗口小部件创建。 对于重置密码,用户需要输入正确的安全问题的答案。 之后,他将提供两个单选按钮。 一个是含有标签为“更改密码在这里”等作为“发送密码重置链接到邮件”。

因此,当用户将点击第一个单选按钮,这个小部件将得到呈现,这将有两个文本框用于输入新的密码,重复密码,并提交按钮。那么如何实现这个小部件。

我创造了简单的部件打招呼为:

class Sample extends CWidget { 
    public function init() { 
    Yii::app()->getClientScript()->registerScript('SampleWidget',"alert('Hello');"); 
    } 
} 

那么如何添加文本字段和提交按钮,这个小程序。或者如何渲染这个小部件中的任何视图。请帮帮我。

+1

你试过$这个 - >渲染( “MyView的”); –

回答

0

渲染窗口小部件是相同的渲染的任何其它视图。只需将布局属性设置为不同的值,以免再次获取标题。 public $ layout ='// layouts/noheader';您可以在您的方法中设置该属性,如$ this-> layout ='// layouts/noheader'。这也可以让你做自定义的东西,例如我有一个弹出式布局。你也应该创建它作为一个部分,所以它可以在其他地方使用。

0

使用$这 - > render()方法,这将使得从你的部件/视图文件夹的局部视图(没有布局)。

$this->render('my-widget',array()); 

check here

+0

如果我正在显示视图,因为你已经提到as- public function run(){$ this-> render('password')}。它给出错误 - 无法找到“密码”视图。我在示例文件夹ehich中创建了示例类文件和password.php文件,这些文件在protected-> extensions文件夹中创建。那么现在我需要做些什么改变?请帮助我先生... – user1761116

0

不要忘了这种结构:

return $this->render('$viewname'); 

我忘了写return 和花太多的时间用于搜索的错误;
希望它帮助