[英]file Upload Verifier - jQuery/Javascript
嗨,
我想设计一个上传器页面的前端,以便
只能选择 JPG 文件
最大文件大小应为 1mb
我想在 JavaScript [不在 PHP 左右...] 中进行此检查,有人可以帮我吗?
[我没有要显示的代码]
坚持文件名必须表明文件类型对用户不友好,但如果你不同意我的观点,你可以检查<input>
元素上的文件名。 检查实际文件内容和大小更难,需要 Flash 或新的 HTML5 功能。
(文件名,除去任何其他路径信息,甚至可能伪装成虚假的路径信息,可用作<input>
元素的“值”属性。)
您可以检查扩展名(不检查 mime 类型!)
像这样:
var el = document.getElementById('filename');
var fileName = el.value;
//do some regex magic to validate for /jpg\z/i
另外:您还必须检查服务器。 没有什么可以阻止任何人禁用 javascript 来上传.exe 或其他令人毛骨悚然的大文件。
对于 rest,我认为目前没有很多针对 javascript 的向后兼容解决方案。 如果你真的想在客户端做,你可能想看看 flash - 因为它有更多的权限来检查它。 (仍然需要在服务器端进行验证)
另一种解决方案可能是 html5 文件 api: http://www.w3.org/TR/FileAPI/#dfn-file
firefox >3.6 的示例: https://developer.mozilla.org/en/using_files_from_web_applications (仍然需要在服务器上进行验证)
我认为你可以为你的页面使用 pluploader。这可以很好地处理你的要求。这是链接。 http://www.plupload.com/example_queuewidget.php
我找到了 Javascript 解决方案。 如果您只想要 jquery。 将其转换为 jquery :-)
<html>
<head>
<script>
function getSize()
{
var myFSO = new ActiveXObject("Scripting.FileSystemObject");
var filepath = document.upload.file.value;
var thefile = myFSO.getFile(filepath);
var size = thefile.size;
alert(size + " bytes");
}
</script>
</head>
<body>
<form name="upload">
<input type="file" name="file">
<input type="button" value="Size?" onClick="getSize();">
</form>
</body>
</html>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.