2014-10-31 25 views
0

嗨我有一个要求,我期待很多视频上传流量,但我想确保上传的文件只是视频。如何限制只使用JavaScript或JQuery的视频上传?

由于某些特定原因,我没有使用任何上传器插件。

<input type="file" id="upload" class="btn btn-blue" style="height: 35px;" name="file" /><br /> 

我正在使用简单的html文件类型输入,我只想限制视频上传。

我试过检查扩展名,但它很多扩展和难以检查它的每一个。

http://www.fileinfo.com/filetypes/video

对此有何想法?

+0

你可以做到以下几点:当用户点击提交按钮上传视频,使用jQuery来确定文件的扩展名,即只允许在文件扩展名为.mp4或.avi等文件的情况下上传文件...如果不是,则使用event.preventdefault(),然后使用一个消息,只有视频文件应该上传 – Robin 2014-10-31 04:25:58

+0

来检查我认为150 +视频扩展不是一个好的方法来限制。 – 2014-10-31 04:29:27

+0

然后在我提到的过程中尝试一些正则表达式也许这将有助于 – Robin 2014-10-31 04:30:42

回答

0

您无法限制客户端的上传。您应该使用服务器端验证来执行此类验证。

您可以将accept attribute设置为输入类型文件的视频。这只能说明基于MIME类型文件的选择可以由用户更改文件类型过滤:

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

通过JS设置:

document.getElementById("upload").accept = "video/*"; 
+0

注意:'accept' video/*属性从HTML5有效https://developer.mozilla.org/zh-CN/docs/Web/HTML/元素/输入意味着仍然在2014 IE8,9中要认真考虑。 – 2014-10-31 03:00:19

+0

如果我使用accept属性,它不会限制我。在浏览窗口中,我可以选择所有文件并选择任何非视频文件。 – 2014-10-31 03:06:12