【发布时间】:2019-06-05 14:19:29
【问题描述】:
我试图在将文件添加到基本 HTML 文件输入时获取文件的文件/mime 类型。
我的基本 HTML:
<form method="post" enctype="multipart/form-data">
<div>
<label for="file">Upload an MKV file:</label>
<input type="file" id="file" name="file" multiple>
</div>
</form>
我的 Javascript:
var control = document.getElementById("file");
control.addEventListener("change", function(event) {
var files = control.files;
for (var i = 0; i < files.length; i++) {
console.log("Filename: " + files[i].name);
console.log("Type: " + files[i].type);
}
}, false);
以添加 MP4 为例,控制台输出如下:
Filename: myvideo.mp4
Type: video/mp4
虽然添加 MKV 文件时,控制台输出类型为空,如下所示:
Filename: myvideo.mkv
Type:
经过进一步研究,我发现一个MKV文件的官方mimetype是video/x-matroska。所以我尝试将accept="video/*" 添加到文件输入中。这允许将所有视频类型添加到输入除了 MKV 文件,这很奇怪。
那么为什么我的文件输入无法检测到 MKV 文件的文件类型呢?
【问题讨论】:
-
一个原因可能是 - 浏览器本身不支持它
标签: javascript html mkv