解决ajax异步上传文件的问题

Posted cwjdd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决ajax异步上传文件的问题相关的知识,希望对你有一定的参考价值。

html
<form id="avater" name="formlist">
csrf_field()
<ul class="list-group container" style="width:50%">
    <li class="list-group-item list" style="border-radius: 5px">
        <input id="image" class="file" type="file" name="file">
        <button id="btn" style=" width: 50px;height: 25px;padding:0" class="btn btn-primary radius" type="button">上传</button>
    </li>
</ul>
</form>
Jquery:
$(‘#btn‘).on(‘click‘, function()
    var file = $(‘#image‘)[0].files[0];
    var form = $(‘#avater‘)[0];
    var formdata = new FormData(form);
    formdata.append(‘image‘, file)
   $.ajax(
       type: ‘post‘,
       url: "url(‘setava‘)",
       data: formdata,
       dataType: ‘json‘,
       processData: false,
       contentType: false,
       success: function(res)
            if (res.status == 0)
                 alert(res.msg);
                 window.location.href = "url(‘set‘)";
           
     
);
红色部分为重要部分,使用FormData对象可以解决ajax异步上传文件的问题。并且可以同时传输表单内容和文件的合并上传,后台代码正常接值就可以。(文件时用file来接)

以上是关于解决ajax异步上传文件的问题的主要内容,如果未能解决你的问题,请参考以下文章

文件的上传(表单上传和ajax文件异步上传)

关于MVC Ajax.BeginForm()异步上传文件的问题

ajaxFileUpload异步上传图片,服务器文件叫多,如何删除啊~~

SpringMVC + AJAX 实现多文件异步上传

ajax springMvc 异步 上传 文件

(H5)FormData+AJAX+SpringMVC跨域异步上传文件