我正在开发YII项目,我想在弹出窗口中使用精美框弹出一个html窗体视图,点击链接。如何做到这一点?我尝试了花哨的盒子扩展,但它没有工作..KIndly重定向我如何实现这个......
答案 0 :(得分:2)
Yii::app()->getClientScript()->registerCssFile(Yii::app()->theme->baseUrl . '/css/jquery.fancybox-1.3.4.css');
Yii::app()->getClientScript()->registerScriptFile(Yii::app()->theme->baseUrl . "/js/jquery.fancybox-1.3.4.pack.js", CClientScript::POS_HEAD);
在所需的操作中包含文件和所需的控制器
我喜欢将代码和css直接放在我的主题文件夹中。
然后,您使用$(document).ready(function(){$('.myfancyboxlinks').fancybox(););
链接应该看起来像<a class="myfancyboxlinks" href="/ajax/fancybox">Open Fancybox!</a>
我也喜欢使用像这样的方法的AjaxController.php:
public function actionFancybox()
{
if(Yii::app()->request->isAjaxRequest)
{
//do stuff here
// ............
$this->layout = '//path/to/fancybox/layout';
$this->render("myfancyboxview");
}
}
然后,您可以在/ views / ajax / myfancyboxview
中执行任何操作答案 1 :(得分:1)
试试这个:
把
<a href="link to your partially rendered page" id="fancybox-trigger">something</a>
,在您看来,需要的地方。
在其他地方(应该是相同的观点):
$config = array(
'scrolling' => 'no',
'titleShow' => false,
'overlayColor' => '#000',
'padding' => '0',
'showCloseButton' => false,
'onClosed'=>'',
// change this as you need
);
$this->widget('application.extensions.fancybox.EFancyBox', array('target'=>'#fancybox-trigger', 'config'=>$config));