我在页面中有两个按钮。一个用于提交页面,另一个用于Fancybox。单击“提交”按钮后,Fancybox无法正常工作。我在提交按钮单击时使用YII模型验证。
我的facybox js是:
$(function(){
$(".various3").fancybox({
'width' : '75.65%',
'height' : '100%',
'top' : '-1020',
'autoScale' : false,
'autoDimensions' : false,
'scrolling' :'No',
'transitionIn' : 'none',
'transitionOut' : 'none',
'type' : 'iframe',
'padding' : 0,
'margin' : 0,
'onComplete' : function(){$('.fancybox-iframe').contents().find('#MerchantLocations_location_name').focus();}
});
});
这是我的观点:
<a href="<?php echo Yii::app()->createAbsoluteUrl('/admin/addlocation/');?>" class="various3 " ><input type="button" class="big-btns-small floatright" value="Add Location"/></a>
也在Mozilla的错误控制台“错误:TypeError:t未定义”正在出现
答案 0 :(得分:1)
如果您正在使用Yii网格及其搜索功能,很可能在搜索查询的响应中,您会在AJAX响应中再次传递jQuery
。
然后重新初始化jQuery
会破坏现有的FancyBox小部件。
快速解决方法是在scriptMap
组件的clientScript
部分禁用jQuery,有关详细信息,请参阅此问题:How to disable jQuery autoloading on Ajax request in Yii?
答案 1 :(得分:1)
终于修好了......
从1.3.4
更新了最新版本2.1.4的花式框现在发生了什么是弹出窗口即将到来。但是类'fancybox-overlay'的div来了2次。即第一个具有弹出内容而另一个具有空白(无内容)。由于空白div正在越过另一个。当我点击弹出窗口时弹出窗口立即关闭。
为了克服这个问题,将fancybox脚本和样式表的包含移到了网站的标题部分(它来查看/ layout / main.php)。
感谢@schmunk您宝贵的时间。