この質問は新しい質問をもたらしました:
HTMLページがあり、ユーザーが「保存」ボタンを押したときにコンテンツタイプを変更して、ブラウザがファイルをディスクに保存するように求めるプロンプトを表示する必要があります。
私はこれをサーバー側で行って、ページの「Excel」バージョン(基本的にはhtmlテーブル)を提供しています。
<c:if test="${page.asExcelAction}">
<%
response.setContentType("application/vnd.ms-excel");
%>
私が今やろうとしていることは同じことをすることですが、クライアント側ではjavacriptを使用していますが、それを行うことができません。
これは私がこれまでに得たものです:
<html>
<head>
<script>
function saveAs(){
var sMarkup = document.getElementById('content').innerHTML;
//var oNewDoc = document.open('application/vnd.ms-excel');
var oNewDoc = document.open('text/html');
oNewDoc.write( sMarkup );
oNewDoc.close();
}
</script>
</head>
<body>
<div id='content'>
<table>
<tr>
<td>Stack</td>
<td>Overflow</td>
</tr>
</table>
</div>
<input type="button" value="Save as" onClick="saveAs()"/>
</body>
</html>