Имеется строка таблицы:
<tr onclick="OnRowClick(402);">
(onclick получен программным путём)
и функция:
<script type="text/javascript">
function OnRowClick(id)
{
window.open("TheDocument.aspx?ID="+id+"&SessionID=wtunxd55o20pzsbo3igh5bfk", "TheDocument", "center=1,resizable, status=0, scrollbars=1, help=no");
}
</script>
Проблема в том, что когда TheDocument.aspx выводит в Response.OutputStream не HTML, а документ MHTML, Indernet Explorer встаёт в позу и не хочет скачивать/открывать документ. Причём пишет отмазки, в которых ни разу не упоминается истинная причина проблемы (настройки зоны безопасности).
Когда открываю страницу по прямой ссылке
<a href="TheDocument.aspx?ID=402&SessionID=wtunxd55o20pzsbo3igh5bfk">
а не через window.open, то документ открывается нормально.
Проблема в том, что прямую ссылку не назначишь тегу <tr>.
Как быть?
Ниже фрагмент кода, выводящий документ в OutputStream:
string data = GetMHTMLData();
Response.ContentType = "text/mhtml";
Response.AddHeader("Content-disposition", "attachment;filename=output.mht");
byte[] bytes = Encoding.UTF8.GetBytes(data);
Response.OutputStream.Write(bytes, 0, bytes.Length);
Response.OutputStream.Flush();
Response.OutputStream.Close();
Response.Flush();
Response.Close();
Response.End();