AJAX
var commercialName=$("#commercialName").val()
var commerciaPhone=$("#commerciaPhone").val()
var commerciaSite=$("#commerciaSite").val()
console.log(commercialName)
var file=document.getElementById('file').files
var formData=new FormData()
formData.append("file",file[0])
$.ajax({"url":"/systemController/merchantController/contact",
"encType": 'multipart/form-data',
"processData": false,
"contentType":false,
"data":{"file":formData,"commercialName":commercialName,"commerciaPhone":commerciaPhone,
"commerciaSite":commerciaSite},
"type":"post",
"dataType":"json",
"success":...
JAVA
``` @RequestMapping(value = "contact" ,method = RequestMethod.POST)
@ResponseBody
public Dto contact( MultipartFile file,
DbBusinessInformation businessInformation,
HttpServletRequest request)
也找了很多方法,还是没办法解决
一般上传文件是走单独接口的,先掉上传文件接口,然后返回文件路径,然后再把文件路径名称放进form表单一起提交。望采纳
你看看 是不是springmvc没有配置dispatcher.xml文件没有配置
<!-- 文件上传处理器 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="20480000"/>
</bean>
看看js和你html是否能先进入后台的controller
你可以用表单去进行文件的上传
ajax请求时不要设置Content-Type,不需要写这一项属性