Javascript 使用HTML,如何以excel文件的形式打开文件?

Javascript 使用HTML,如何以excel文件的形式打开文件?,javascript,html,excel,Javascript,Html,Excel,我有一个名为new.xls的excel文件,我将其保存为.html格式,即new.html。我已删除扩展名,因此文件名只是新的 现在,如果我将文件重命名为new.xls。 对于以下代码 结果文件将在Excel中打开 然后,如果我将文件重命名为new.html 对于以下代码 <!DOCTYPE html> <html> <body> <input type="button" onclick="openxls()" value="Open Fi

我有一个名为new.xls的excel文件,我将其保存为.html格式,即new.html。我已删除扩展名,因此文件名只是新的

现在,如果我将文件重命名为new.xls。 对于以下代码

结果文件将在Excel中打开

然后,如果我将文件重命名为new.html 对于以下代码

<!DOCTYPE html>
<html>
<body>  
    <input type="button" onclick="openxls()" value="Open File as xls ">
    <input type="button" onclick="openhtml()" value="Open File as html">
</body>
<script>
    function openxls()
        {
         var x = ".xls" 
         var y = "new" + x ;
         window.open(y);
        }

            function openhtml()
        {
         var x = ".html" 
         var y = "new" + x ;
         window.open(y);
        }
</script>
</html>

生成的文件将作为表格在浏览器中打开

我想保持文件名为new,并使用两个不同的按钮,一个在Excel中打开文件,另一个在浏览器中以html格式打开文件。 诱使浏览器认为该文件是.xls.html文件

我尝试了以下代码

<!DOCTYPE html>
<html>
<body>  
    <input type="button" onclick="openxls()" value="Open File as xls ">
    <input type="button" onclick="openhtml()" value="Open File as html">
</body>
<script>
    function openxls()
        {
         var x = ".xls" 
         var y = "new" + x ;
         window.open(y);
        }

            function openhtml()
        {
         var x = ".html" 
         var y = "new" + x ;
         window.open(y);
        }
</script>
</html>
我想在excel中打开该文件进行编辑,并希望对其进行预览 浏览器

在excel中编辑后,您应该能够使用
XMLHttpRequest()
请求
new.xls
作为
Blob
。responseType
设置为
“Blob”
,使用
type
设置为
text/html
的响应创建一个新的
Blob
,然后使用
URL.createObjectURL()
将新创建的
Blob
作为参数传递给
窗口。open()
可在浏览器中以
.html
文档的形式查看文件

var request = new XMLHttpRequest();
request.open("GET", "new.xls");
request.responseType = "blob";
request.onload = function() {
  // set `blob` `type` to `"text/html"`
  var blob = new Blob([this.response], {type:"text/html"});
  var url = URL.createObjectURL(blob);
  var w = window.open(url);
}
request.send();

文件系统中是否保存了两个文件
new.xls
new.html
?或者只有一个名为
new
?@guest271314的文件……只有一个文件
new
。没有任何扩展名。文件系统中新文件的
MIME
类型是什么?为什么不想使用两个单独的文件?@guest271314…不确定…它的
mimeTypes.rdf
…我在使用Firefox如果在操作系统上打开文件管理器窗口并查看文件属性,那么
新建的
的文件类型是什么?创建两个单独的文件有什么问题?那就是
new.xls
new.html
?不起作用,我第一次尝试时,它只显示html文本。第二次就这样了blank@DannyBoi“仅显示html文本”您是否可以包括显示的html文本,以及问题中的
new.xls
文本?@DannyBoi Note,使用excel已有一段时间了。虽然我相信openoffice有可用的插件可以从
.xls
转换为
.html
Excel有一个保存为其他格式的选项,文件正在正确解析,但我想,我确实
键入了:“text/plain;charset=utf-8”
及其显示的html代码。@DannyBoi“及其显示的html代码。”你能在问题中包括
html
吗?在新打开的
窗口中,
html
不会呈现为
html