javascript – 文件上传 – 在“文件上传”窗口中限制文件类型

我有一个关于文件上传的问题,我需要限制文件类型,但我喜欢在“文件上传”窗口中这样做,所以用户甚至看不到不允许上传的文件,我喜欢这样做在js或
jquery中.

我知道有可能,例如,uploadify插件可以做到这一点,但我不想出于多种原因使用它.

最佳答案 试试这个链接.它应该给你你需要的东西.它只使用直接的
javascript,我认为还没有任何
JQuery选项.

http://www.codestore.net/store.nsf/unid/DOMM-4Q8H9E

<script type="text/JavaScript">
<!-- Begin
function TestFileType( fileName, fileTypes ) {
if (!fileName) return;

dots = fileName.split(".")
//get the part AFTER the LAST period.
fileType = "." + dots[dots.length-1];

return (fileTypes.join(".").indexOf(fileType) != -1) ?
alert('That file is OK!') : 
alert("Please only upload files that end in types: \n\n" + (fileTypes.join(" .")) + "\n\nPlease select a new file and try again.");
}
// -->
</script>

我已使用发布链接中的实际代码更新了此答案.正如海报所说,这不是解决这个问题的“安全”方法.由于这是客户端javascript,因此可以使用Web开发工具轻松更改文件的扩展名.始终检查服务器端上传的文件,以防止上载恶意文件.

点赞