当前位置: 首页 > 知识库问答 >
问题:

超文本标记语言输入="file"接受属性文件类型(CSV)

越朗
2023-03-14

我的页面上有一个文件上载对象:

<input type="file" ID="fileSelect" />

在我的桌面上使用以下excel文件:

  1. file1.xlsx

我希望文件上载仅显示.xlsx.xls

使用accept属性,我发现这些内容类型处理了.xlsx

接受=应用/vnd.openxmlformats-officedocument.spreadsheetml.sheet(.XLSX)

接受=应用程序/vnd.ms-excel(。XLS)

但是,我找不到Excel CSV文件的正确内容类型!有什么建议吗?

例子:http://jsfiddle.net/LzLcZ/

共有3个答案

巴英韶
2023-03-14

Dom这个属性是非常古老的,不接受在现代浏览器,据我所知,但这里是一个替代它,试试这个

<script type="text/javascript" language="javascript">
function checkfile(sender) {
    var validExts = new Array(".xlsx", ".xls", ".csv");
    var fileExt = sender.value;
    fileExt = fileExt.substring(fileExt.lastIndexOf('.'));
    if (validExts.indexOf(fileExt) < 0) {
      alert("Invalid file selected, valid files are of " +
               validExts.toString() + " types.");
      return false;
    }
    else return true;
}
</script>

<input type="file" id="file" onchange="checkfile(this);" />

我想这会对你有帮助的。当然,你可以根据需要修改这个脚本。

苏彦君
2023-03-14

这些天你可以只使用文件扩展名

<input type="file" ID="fileSelect" accept=".xlsx, .xls, .csv"/>
黎同
2023-03-14

这太尴尬了。。。我找到了我正在寻找的解决方案,它再简单不过了。我使用以下代码来获得所需的结果。

<input id="fileSelect" type="file" accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel" />  

对于CSV文件(.CSV),请使用:

<input type="file" accept=".csv" />

对于Excel文件97-2003(.xls),请使用:

<input type="file" accept="application/vnd.ms-excel" />

对于Excel文件2007(.xlsx),请使用:

<input type="file" accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />

对于文本文件(. txt)使用:

<input type="file" accept="text/plain" />

对于图像文件(. png/. jpg/etc),使用:

<input type="file" accept="image/*" />

对于超文本标记语言文件(. htm,. html),使用:

<input type="file" accept="text/html" />

对于视频文件(. avi,. mpg,. mpeg,. mp4),请使用:

<input type="file" accept="video/*" />

对于音频文件(.mp3、.wav等),请使用:

<input type="file" accept="audio/*" />

对于PDF文件,请使用:

<input type="file" accept=".pdf" /> 

演示:
http://jsfiddle.net/dirtyd77/LzLcZ/144/

注:

如果试图显示Excel CSV文件(.CSV),请不要使用:

  • text/csv
  • 应用程序/csv
  • 文本/逗号分隔值(仅适用于Opera)

如果您试图显示特定的文件类型(例如,WAVPDF),那么这几乎总是有效的...

 <input type="file" accept=".FILETYPE" />
 类似资料:
  • 问题内容: 我的页面上有一个文件上传对象: 在我的桌面上使用以下excel文件: file1.xlsx file1.xls file.csv 我要上传文件到 ONLY 显示,,和文件。 使用属性,我发现这些内容类型负责&扩展… = application / vnd.openxmlformats- officedocument.spreadsheetml.sheet(.XLSX) = applic

  • 我的页面上有一个文件上载对象: 我的桌面上有以下excel文件: 文件1.xlsx 文件1.xls 文件.csv 我希望文件上载仅显示、、&文件。 使用属性,我发现这些内容类型处理了和扩展... =application/vnd.openxmlformats-officeDocument.spreadsheetml.sheet(.xlsx) =application/vnd.ms-excel(.x

  • 我在jQuery中看到了这一点——它做了什么?

  • 我有一位客户/朋友正在准备通过agencyaccess发送电子邮件。他们需要一个包含所有内容的html文档,并在一个html文档中包含电子邮件的纯文本版本。我想我有一个基本的理解,但有点困惑。我通常使用Mailchimp来处理我的电子邮件营销。 因此,我们将使用常规的html文档 但是,我们是否在此下方的某个地方为纯文本版本声明了另一种mime类型,然后电子邮件客户端选择要显示的类型?这两者是否都

  • 我有一点HTML应该调用/nodes/calibleph?值=浮点数: 编辑:这家伙似乎也有同样的问题

  • 我们有一个基于Java的系统,它从数据库中读取数据,用预设的标记合并单个数据字段,并用将结果转换为。 在格式中,它看起来像这样: 现在我正在寻找一种方法来允许一些字段包含静态超文本标记语言格式的内容。此内容将由我们启用超文本标记语言的编辑器(类似、等的东西)生成或从外部粘贴。 我的计划是遵循这篇JavaWorld文章的配方: < li >使用< code>JTidy将HTML格式的字符串转换为正确