关于ShowModalDialog中的Excel导出窗口不能自动弹出的问题
给一个ShowModalDialog添加导出的功能。测试的时候,导出按钮点了N多次,仍不见半点反应,调试发现后台代码有执行,没出出现任何问题。说明是页面哪个地方的设置引起的。突然想起为了让页面在列表头部分点击的时候有自动刷新但不弹出新页面的功能,特意在页面头部分添加了如下代码:<base target="_self">。
首先,我把这行代码删除,发现刷新和导出都是可以的。但都会弹出一个页面。那就可以肯定是这里的问题了。而添加了这行代码后,导出会受到影响。
根据以往的经验,在ShowModalDialog添加一个iframe可以解决这个问题。我就尝试着做了起来。
1、将如下代码放在头部分:
<base id="base_tag" target="_self" />
?
?
?
2、在body的末尾添加如下代码:
<iframe id="baseExportThis" name="baseExportThis" height="0px" width="0px"></iframe>
?
?
?
?
3、在导出按钮中作如下处理:
$('#base_tag').attr('target','baseExportThis');var temp = document.getElementById("form").action; document.getElementById("form").action = "${root}/sci/exportMidscip.action"; document.getElementById("form").submit(); document.getElementById("form").action = temp;$('#base_tag').attr('target','_self');
?
?
?