Yii framework: showdialogbox (CJuiDialog)


Yii framework: showdialogbox (CJuiDialog)

我想打开一个对话框,但它应该像我菜单的一部分。我得到了这样的CMenu:

<?php $this->widget('zii.widgets.CMenu',array(
            'items'=>array(
                                array('label'=>'Login', 'url'=>"#", 'onclick'=>'$("#mydialog").dialog("open"); return false;'),
                array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest),
                                array('label'=>'Home', 'url'=>array('/site/index')),
                                array('label'=>'About Me', 'url'=>array('/site/index'), 
                                    'items'=>array(
                                             array('label'=>'CV', 'url'=>array('/site/cv')),
                                             array('label'=>'Contact', 'url'=>array('/site/contact')))),
                array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')),

                                array('label'=>'Register', 'url'=>array('/tblUsers/create'))
            ),
        )); ?>

如您所见,我已经尝试以某种方式将其添加到我的菜单中,但我不知道我在做什么。我可以像这样在外面打开它:

echo CHtml::link('open dialog', '#', array(
   'onclick'=>'$("#mydialog").dialog("open"); return false;'));

所以这就是我实际上尝试在上面的菜单中实现的,但没有成功。

为此,您应该使用 linkOptionsitemOptions

<?php $this->widget('zii.widgets.CMenu',array(
  'items'=>array(
    array('label'=>'Login', 'url'=>"#", 'linkOptions' => array(
       'onclick'=>'$("#mydialog").dialog("open"); return false;'),
    )),
    /* other menu items */
  )
)); ?>

链接到 API 文档