4

我正在构建一个内部网络应用程序,它允许用户通过文件输入元素上传文件,如下所示:

<input class="WebFormControls" type="file" accept=".csv" id="fileBulkCsv" name="fileBulkCsv" onchange="javascript:OnFileUploadChange();" />

问题

我的问题是客户的 SOE 使用 IE8(嘘,是的,我知道)。不幸的是,这个版本的 IE 不支持将 input 元素的accept属性与 type="file" 结合使用(在 Chrome 中运行良好)。

问题

我的问题是:有没有另一种方法来重现这种行为?我的目标是让浏览器打开一个文件对话框,该对话框预设为仅过滤 CSV 文件。

我已经尝试使用文件扩展名模式(“.csv”)和 MIME 类型(“text/csv”)参数,但它不起作用,我怀疑 IE8 根本不处理接受属性。

超出范围

请注意,我对使用 JavaScript 验证文件名及其扩展名的概念非常满意。但是,这发生在事后,一旦用户已经选择了要上传的文件。我正在寻找一种方法(如果可能的话)在微软浏览器上复制接受行为。

谢谢!

4

1 回答 1

8

实现此目的的唯一方法是在 Flash 或 Java(小程序)中使用外部上传器

您可以使用例如 swfupload:https ://code.google.com/p/swfupload/

不幸的是,检查文件类型在 html5 api 中,IE8 不支持

于 2013-06-12T04:11:00.210 回答