1. 程式人生 > >from表單同時存在檔案和資料用fromdate非同步上傳

from表單同時存在檔案和資料用fromdate非同步上傳

前端程式碼 from表單id自定義我這定義的uploadfrom前端的from表單我就不貼出來了

var formData = new FormData(document.getElementById("uplodfrom"));
		 $.ajax({
		   url: '${pageContext.request.contextPath }/123',
		   type: 'POST',
		   data: formData,
		   async: true,
		   cache: false,
		   contentType: false,
		   processData: false,
		   success: function (returndata) {
			 $("#"+returndata.type).append('<div id="'+returndata.id+'"><img src="${pageContext.request.contextPath }/'+returndata.path+'">'+
	          '<button class="layui-btn layui-btn-xs layui-btn-danger" onclick="deleteimg(\''+returndata.id+'\')">刪除圖片</button></div>');
			   parent.layer.msg(returndata.msg);
		   }
		 });

後端程式碼其中我用了一個檔案上傳的工具類,可在我以前部落格中查詢

public Object updateCheckattr(String checkid,String type,HttpServletRequest request){
		String dirname="upload_store_check/";
		Map<String,Object> mapjson=new HashMap<>();
		if(type==null||type==""){
			mapjson.put("msg","附件型別不能為空");
		}
		List<Map<String, String>>imgList=imgUploadUntil.lkh_uploadFile(request, dirname);
		NtpdCheckAtt att=new NtpdCheckAtt();
			for (Map<String, String> map : imgList) {
				String attid=UUID.randomUUID().toString().replace("-","");
				att.setId(attid);
				att.setAtt_path(map.get("fileurl"));
				att.setStore_check_id(checkid);
				att.setAtt_type(type);
				this.ntpdCheckService.addNtpdAttr(att);
				mapjson.put("path", map.get("fileurl"));
				mapjson.put("type", type);
				mapjson.put("id",attid);
				mapjson.put("msg","上傳成功");
			}
			
		return mapjson;