Jquery文件大小验证不起作用

时间:2015-02-10 07:26:58

标签: javascript jquery file validation

我在互联网上获得了这个jquery文件类型验证。它很棒。我后来在其中添加了一些代码来验证文件的大小。但是当我的文件大小超过50KB时,它没有引发警告框。我只是学习jquery所以我不确定我添加的内容是否正确。请帮忙。

这是JSFIDDLE

以下是代码:

<script>
$(document).ready(function () {
$('input[type=file]').change(function () {
var val = $(this).val().toLowerCase();
var regex = new RegExp("(.*?)\.(jpg|jpeg|gif)$");
if(!(regex.test(val))) {
$(this).val('');
alert('Unsupported file');
} 
if ($(this).files.size > 50000 || $(this).files.fileSize > 50000)
    {
        //reset file upload control
       $(this).val('');
       //show an alert to the user
       alert('Allowed file size exceeded 50KB');


    }
}); });
</script>

这是我在现有代码中添加的内容:

if ($(this).files.size > 50000 || $(this).files.fileSize > 50000)
    {
        //reset file upload control
       $(this).val('');
       //show an alert to the user
       alert('Allowed file size exceeded 50KB');


    }

2 个答案:

答案 0 :(得分:2)

工作小提琴HERE

代码

$(document).ready(function () {
$('input[type=file]').change(function () {
var val = $(this).val().toLowerCase();
var regex = new RegExp("(.*?)\.(jpg|jpeg|gif)$");
if(!(regex.test(val))) {
$(this).val('');
alert('Unsupported file');
} 
if (this.files[0].size > 50000 || this.files[0].size > 50000)
    {
        //reset file upload control
       $(this).val('');
       //show an alert to the user
       alert('Allowed file size exceeded 50KB');


    }
}); });

更多参考Here。它使用this.files[0].size表示获取第一个选择文件的文件大小(如果启用了多选,检查第一个图像),无论如何您没有多选,因此您使用选择的第0个文件索引访问它,因为您只能选择1个文件在正常运作中。

答案 1 :(得分:-1)

&#13;
&#13;
$(document).ready(function () {
$('input[type=file]').change(function () {
var val = $(this).val().toLowerCase();
var regex = new RegExp("(.*?)\.(jpg|jpeg|gif)$");
if(!(regex.test(val))) {
$(this).val('');
alert('Unsupported file');
} 
if (this.files[0].size > 50000)
    {
        //reset file upload control
       $(this).val('');
       //show an alert to the user
       alert('Allowed file size exceeded 50KB');


    }
}); });
&#13;
<input type="file"/>
&#13;
&#13;
&#13;