父页面用window.showModalDialog,弹出窗口。 在弹出窗口中我为了防止页面中提交跳到新的页面,我在弹出窗口对应的页面,加了<base target="_self"/>。现在弹出窗口中有一个按钮要求能导出excel文件。导出代码如下:
  page.Response.Clear();
            page.Response.Buffer = true;
            page.Response.AppendHeader("Content-Disposition", string.Format("Attachment;fileName={0}", filename));
            page.Response.ContentType = "application/vnd.ms-excel";
            page.Response.Charset = "";
            page.Response.ContentEncoding = Encoding.Default;
            page.EnableViewState = false;            ReplaceControl(ref control);            StringWriter stringWriter = new StringWriter();            HtmlTextWriter htmlTextWriter = new HtmlTextWriter(stringWriter);
            control.RenderControl(htmlTextWriter);
            page.Response.Write(stringWriter.ToString());
            page.Response.End();
但是,当浏览器是IE时,导出部分代码没有反应。在网上找了好久没找到解决方案。  有一个解决方案是,加一个iframe。不过,加iframe,在ie运行时javascript报错“microsoft jscript runtime error: object expected"