ExtJS中定义iframe. 列出我自己所知道的方案。
方案一
例如
var iframe={
region:'center',
border:true,
margins:'3',
html: '<iframe id=\'procFrame\' src=\''+src+'\' frameborder=\'0\' width=\'100%\' height=\'100%\'></iframe>'
}
可通过以下方式为iframe赋值路径
Ext.getDom("procFrame").contentWindow.location.href = 'xxxx.action'
方案二
例如
先扩展一个boxcomponent
Ext.ux.IFrameComponent = Ext.extend(Ext.BoxComponent, {onRender : function(ct, position){this.el = ct.createChild({tag: 'iframe', id: 'iframe-'+ this.id, frameBorder: 0, src: this.url});}})
var iframe = new Ext.ux.IFrameComponent({ id: id, url: url })
最近一个项目中,需要在tabpanel的tab中添加iframe,通过上述方式,本地测试时,可以正常显示,但是发布到测试服务器上后,ie访问测试服务的ext页面时,发现无法显示Iframe中内容,通过ie 开发者工具,发现iframe中内容也的确加载了。切换tab或者调整页面大小,才可以显示iframe内容。查了很多资料,尝试了很多方法,都不奏效。后来无意中清空了浏览器缓存。iframe可以正常显示了。晕死。
方案一
例如
var iframe={
region:'center',
border:true,
margins:'3',
html: '<iframe id=\'procFrame\' src=\''+src+'\' frameborder=\'0\' width=\'100%\' height=\'100%\'></iframe>'
}
可通过以下方式为iframe赋值路径
Ext.getDom("procFrame").contentWindow.location.href = 'xxxx.action'
方案二
例如
先扩展一个boxcomponent
Ext.ux.IFrameComponent = Ext.extend(Ext.BoxComponent, {onRender : function(ct, position){this.el = ct.createChild({tag: 'iframe', id: 'iframe-'+ this.id, frameBorder: 0, src: this.url});}})
var iframe = new Ext.ux.IFrameComponent({ id: id, url: url })
最近一个项目中,需要在tabpanel的tab中添加iframe,通过上述方式,本地测试时,可以正常显示,但是发布到测试服务器上后,ie访问测试服务的ext页面时,发现无法显示Iframe中内容,通过ie 开发者工具,发现iframe中内容也的确加载了。切换tab或者调整页面大小,才可以显示iframe内容。查了很多资料,尝试了很多方法,都不奏效。后来无意中清空了浏览器缓存。iframe可以正常显示了。晕死。