formData+ajax文件上传


html代码:

<form class="form-horizontal" enctype="multipart/form-data" method="post" id="abcdefg">
    <input id="js-input-file1" name="file1" class="js-fileupload" type="file">
    <input id="js-input-file2" name="file2" class="js-fileupload" type="file">
</form>

js代码:

//楼主觉得原生input文件选择框较丑,使用的样式为jquery fileupload插件;选择文件后将文件名显示左侧
//<input id="js-input-file1" name="text1" >
//<input id="js-input-file1" name="file1" type="file">

//$('#js-input-file1').fileupload({
//    replaceFileInput: false, //此处尤为重要,否则无法配合formData使用
//    dd: function(e, data) {
//        var filename = data.files[0].name;
//        $('input[name="text1"]').val(filename);
//    },
//});

//通过jquery获得form表单对象
var form = $("#abcdefg")[0];
var formData = new FormData(form);
//formData可以添加额外参数
formData.append("extra", "123456");
$.ajax({
    url: url,
    type: 'POST',
    data: formData,
    contentType: false, //禁止设置请求类型
    processData: false, //禁止jquery对DAta数据的处理,默认会处理
    success: function(data) {
    },
    error: function (data) {
    }
});

 java代码:

@RequestMapping(value = "/xxx", method = RequestMethod.POST)
    public ResponseEntity createLoadBalancer(@RequestParam("file1") MultipartFile file1,
                                             @RequestParam("file2") MultipartFile file2,
                                             String extra){
    }

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM