Javascript 我想得到文件大小,我上传使用html,但它不工作

Javascript 我想得到文件大小,我上传使用html,但它不工作,javascript,html,Javascript,Html,我想得到文件大小,我上传使用html,但它不工作 这是我的密码 <html> <head> <script type="text/javascript" src="js/jquery-1.7.1.js"></script> <script type="text/javascript"> $(function() { $("document").ready(function()

我想得到文件大小,我上传使用html,但它不工作

这是我的密码

<html>
  <head>
    <script type="text/javascript" src="js/jquery-1.7.1.js"></script>
    <script type="text/javascript">
        $(function() {
            $("document").ready(function() {
                $("#myFile1").change(function() {
                    var f1 = document.getElementById("myFile1").value;
                    if ((f.size || f.fileSize) == 09765625)
                    {
                        alert("file size is less than 1mb");
                    }
                    else
                    {
                        alert("file size should not exceed more than 1mb");
                        $(this).val($.data(this, 'f'));
                        return false;
                    }
                });
            });

        })
    </script>
  </head>
  <body>
     <input type='file' name="file" id="myFile1" />
  </body>
</html>

$(函数(){
$(“文档”).ready(函数(){
$(“#myFile1”).change(函数(){
var f1=document.getElementById(“myFile1”).value;
if((f.size | | f.fileSize)==09765625)
{
警报(“文件大小小于1mb”);
}
其他的
{
警报(“文件大小不应超过1mb”);
$(this).val($.data(this,'f'));
返回false;
}
});
});
})

它应该是
f

而不是
f1

var f = document.getElementById("myFile1");
在条件中检查变量
f
。所以相应地改变它

您应该使用以下命令检查文件大小

var f = $("#myFile1")[0].files[0].size;

$(“#myFile1”).change(函数(){
var f1=document.getElementById(“myFile1”).value;//将获取文件输入值
var size=($(“#myFile1”)[0]。文件[0]。大小);//在此处获取文件大小
如果(尺寸<1048576){
警报(“文件大小小于1mb”);
}否则{
警报(“文件大小不应超过1mb”);
$(this).val($.data(this,'f'));
返回false;
}
});

document.getElementById(“myFile1”)。值
是仅返回的文件名

输入文件字段是数组中的返回文件信息,所以使用
[0]
作为第一个文件,请尝试这种方法

var file_size = document.getElementById("myFile1").files[0].size
另一个问题:您在
f1
变量中指定了Dom ref,并在
IF
条件中使用了
f
。。在条件下使用
f1
变量,许多bug都会尝试此更新的代码

var f1 = document.getElementById("myFile1").files[0];
if (f1.file_size < 1048576)
{
   alert("file size is less than 1mb");
}
var f1=document.getElementById(“myFile1”).files[0];
如果(f1.u文件大小<1048576)
{
警报(“文件大小小于1mb”);
}
$(函数(){
$(“文档”).ready(函数(){
$(“#myFile1”).change(函数(){
var f1=document.getElementById(“myFile1”).files[0];
如果(f1.u文件大小<1048576)
{
警报(“文件大小小于1mb”);
}
其他的
{
警报(“文件大小不应超过1mb”);
$(this).val($.data(this,'f'));
返回false;
}
});
});
})

我更改代码如下



$(函数(){
$(“文档”).ready(函数(){
$(“#myFile1”).change(函数(){
var f1=this.files[0];
如果(f1尺寸<1048576)
{
警报(“文件大小小于1mb”);
}
其他的
{
警报(“文件大小不应超过1mb”);
$(this.val($.data(this,'f1'));
返回false;
}
});
});
})

如果您正在进行不正确的DOM操作,最好使用Jquery并尝试使用一些好的在线编辑器,如

此外,必须注意命名约定,就像您声明了f1变量并尝试使用f

还有这个帖子

var f1 = document.getElementById("myFile1").files[0];
if (f1.file_size < 1048576)
{
   alert("file size is less than 1mb");
}
    <html>
     <head>
     <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
     <script type="text/javascript">
        $(function() {
            $("document").ready(function() {
                $("#myFile1").change(function() {
                    var f1 = this.files[0];
                    if (f1.size  < 1048576)
                    {
                        alert("file size is less than 1mb");
                    }
                    else
                    {
                        alert("file size should not exceed more than 1mb");
                        $(this).val($.data(this, 'f1'));
                        return false;
                    }
                });
            });

        })
    </script>
  </head>
  <body>
     <input type='file' name="file" id="myFile1" />
  </body>
</html>