私は、テーブル データを Excel ファイル (.xls) としてエクスポート/ダウンロードする機能を含む従来の ASP Web サイトを持っています。これは、通常の HTML ヘッダーの代わりに次のコード ブロックを使用して、ユーザーを新しいページにリダイレクトすることによって行われます。
sub PutInTopOfXLS(FileName)
Response.Buffer = TRUE
Response.CharSet="UTF-8"
Response.CodePage=65001
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader "Content-Disposition", "attachment;filename=" & FileName%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns:x="urn:schemas-microsoft-com:office:excel">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
<!--table
br {mso-data-placement:same-cell;}
tr {vertical-align:top;}
-->
</style>
</head>
<body>
<%end sub
これは、Firefox、Internet Explorer、および Safari (Mac と Windows の両方) のすべてのユーザー (または少なくとも問題は報告されていません) で正常に動作し、Chrome (20.0.1132.57) を使用する私の開発マシンでは正常に動作します。しかし、私の QA 担当者は、サイト上のいくつかのレポートのうちの 1 つの特定のレポートで、常に実際のコード ページ名 ReportFileName.asp で Chrome にダウンロードし、.asp ファイルにファイルが関連付けられていないという Windows エラーが表示されると報告しています。彼が実際に [Excel で開く] を選択した場合、正しいファイルがダウンロードされています。私たちのオフィスの別の人に Chrome をダウンロードするように依頼しましたが、彼女は問題ありません。ファイルは {filename}.xls としてダウンロードされ、正常に開きます。
QA担当者にとって、この1つのレポートのみに影響を与えているという事実は、問題が特定のレポートにあることを示唆しているため、私は非常に混乱しています. ただし、同じバージョンの Chrome を使用している他の 2 人のユーザーが問題を経験していないという事実は、Chrome の設定に問題があることを示唆しています。
解決策をグーグルで検索したり、SOを検索したりする運がなかったので、質問を投げ出して、誰かがアイデアを持っているかどうかを確認したいと思いました。
ご協力ありがとうございました。