Yii:如何在TbTabs小部件中显示小部件?

时间:2014-03-13 09:07:16

标签: php yii widget switch-statement

当我检查页面时,Switch小部件无效,我收到以下错误。 "类WhSwitch的对象无法转换为字符串"

如何才能让我的脚本正常工作?

<?php $this->widget('bootstrap.widgets.TbTabs', array(
  'placement' => '',
    'tabs' => array(

    array('label' => Yii::t('strings', 'Settings'), 'content' => '
                <article class="settings-tab">
                <span class="settings-table">
                    <table>
                    <tr>
                      <td>Deadline of payment</td>
                      <td><input type="text" class="form-control deadline-input"   placeholder="14"></td>
                      </tr>
                    <tr>
                     <td>Link dropbox</td>
                    <td>
                    '.$this->widget('yiiwheels.widgets.switch.WhSwitch', array('name' => 'switchbuttontest')).'                   
                    </td>
                    </tr>
                    <tr>
                     <td>Save to dropbox</td>
                    </tr>
                     <tr>
                     <td>Mail copy of invoice</td>
                    </tr>
                    <tr>
                     <td>Get email when invoice is paid</td>
                    </tr>
                    <tr>
                     <td>Allow partial payments</td>
                    </tr>
                    </table>
                    </span>
                </article>




                ', 'active' => true),

2 个答案:

答案 0 :(得分:0)

试试这个,首先将小部件保存在像

这样的变量中
$yourwidget=$this->widget('yiiwheels.widgets.switch.WhSwitch',
 array('name' => 'switchbuttontest'));

现在在你的tbTabs小部件中,将encodeLabel =&gt;假设为

<?php $this->widget('bootstrap.widgets.TbTabs', array(
  'placement' => '',
   'encodeLabel'=>false,
//your tabs

然后使用它像

<td>
.$yourwidget.                  
</td>

修改 如果上面的代码不起作用,那么就有更优雅的解决方案。
创建一个视图文件并将整个代码(您要在选项卡下显示)放在该视图文件中。在该文件中,您可以轻松地在元素之间嵌入窗口小部件,而无需使用引号。然后你可以像下面这样使用它

    array('label' =>Yii::t('strings', 'Settings'),
 'content' => $this->renderPartial('pages/_form_basic', true), 'active' => true), 

答案 1 :(得分:0)

固定好了!

解决方案:

这 '。$ this-&gt; widget('yiiwheels.widgets.switch.WhSwitch',array('name'=&gt;'switchbuttontest'))。'

到这个

'。$ this-&gt; widget('yiiwheels.widgets.switch.WhSwitch',array('name'=&gt;'switchbuttontest'),true)。'