在Apache 2.2上使用Yii 1.1.14和PHP 5.3.10
控制器的默认入口点呈现带有侧边栏的布局,侧边栏包含自动完成窗口小部件和$ content部分。自动完成小部件是一个rip(请参阅blog),在运行方法中,JQuery自动完成是通过方式链接来调整结果的显示方式。
控制器上有一个操作,用于呈现具有iframe的视图(具有到另一个站点的href)。呈现该视图时,自动完成扩展注册的JavaScript将消失。跟踪渲染调用的输出,它不存在。但是,该脚本仍然已注册。
尝试覆盖afterRender
方法,并在呈现相关视图时执行以下操作:
Yii::app()->getClientScript()-render(&$output);
附加了Javascript。不幸的是,Javascript仍然缺失。
在窗口小部件的运行方法的开头和结尾处添加跟踪。在呈现具有iframe的视图时,也会在呈现正常入口点时查看跟踪。因此小部件正在正常运行。
使用iframe导致视图的操作是否可以正常终止?或者嵌入iframe只是吹掉Javascript并且没有修复?