js 怎么获取input type="file"中的文件

发布于 2022-09-06 04:05:54 字数 869 浏览 24 评论 0

html代码

<input id="load" type="file" onchange="upload(this.files)" multiple/>

js代码

function upload(files){
            console.log(files);
                          $.ajax({
                    type: 'post',
                    url: "download.php",
                    data: {
                        files:files,
                    },
                    dataType: "json",
                    success: function(data) {
                        if(data.status){
                            alert(data.msg);
                            return false;
                        }else{
                            alert(data.msg);
                            return false;
                        }
                    }
            });
        }
        
       但是我console.log 不能打印出file,实在是不知道怎么获取file的属性

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

为你拒绝所有暧昧 2022-09-13 04:05:54

你这个可以console出来的,只是上传写得有问题,不能直接ajax上传,应该用formdata上传

onchange="upload(this)"

function upload(obj){
var files = obj.files ;
var formData = new FormData();
    for(var i = 0;i<files.length;i++){                
        formData.append("upfile[]", files[i]);
        
    }
    $.ajax({
          url: "1.php",
          type: "POST",
          data:formData,
          cache:false,         //不设置缓存
          processData: false,  // 不处理数据
          contentType: false   // 不设置内容类型
    });    
}
傲鸠 2022-09-13 04:05:54

改成下面这样试试

<input id="load" type="file" onchange="upload()" multiple/>
执手闯天涯 2022-09-13 04:05:54

ajax做文件上传,只能把整个表单的数据发送过去 也就是说用formdata发送

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文