ajax提交文件 FormData

我们常用的文件上传都是用form表单的file。普通的ajax只能上传一般的form表单,不能上传文件。

要想使用ajax实现文件上传,需要使用FormData对象发送.

https://developer.mozilla.org/zh-CN/docs/Web/Guide/Using_FormData_Objects

页面:

<form id="import_form" name="fileName" enctype="multipart/form-data">
    <input type="file" name="file" size="50">
    <button type="button" οnclick="wordsSetting.upLoad()" class="btn btn-sm blue-madison">
        导入
    </button>
    <button type="button" οnclick="wordsSetting.cancelUpLoad()" class="btn btn-sm ml10 default">
        取消导入
    </button>
</form>

js:

var oData = new FormData(document.forms.namedItem("fileName"));
$.ajax({
    url:contextPath+"/system_setting/words/upLoad.json",
    type: 'post',
    dataType: 'json',
    data: oData,
    processData:false,
    contentType:false,
    success: function (data) {
        var upLoadContent=data.upLoadContent;
        $("#inWords").text(upLoadContent);
        wordsSetting.cancelUpLoad();
    },
    error: function (data) {
        var message = eval('(' + data.responseText + ')');
        alert("导入失败")

    }
});

spring的配置中配置文件上传:

<!--文件上传-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <property name="defaultEncoding" value="UTF-8"/>
    <property name="maxUploadSize" value="10000"/>
</bean>

controller中使用文件类型接收:

接收参数: MultipartFile file

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值