废话不多说,直接上代码
js:
layui.use('upload', function(){ var $ = layui.jquery,upload = layui.upload; //绑定原始文件域 upload.render({ elem: '#test20' ,url: "<c:url value='/order/imgUpload.do?proVal=IMG_PATH'/>" ,auto: true ,accept: 'file' ,exts:"jpg|png|gif|jpeg|bmp" ,size:1024 ,before: function(obj){ var orderID = $("#orderID").val(); this.data={"orderID":orderID}//携带动态参数 } ,done: function(res){ if(res.msg=='ok'){ alert('上传成功'); }else{ alert(res.msg); } } }); });
java:
上传文件的代码我没写,主要写了怎么取这个动态参数的值
@ResponseBody
@RequestMapping("/imgUpload") public JsonResult imgUpload( HttpServletRequest request,HttpServletResponse response,ModelMap map ){ JsonResult json = new JsonResult(); Integer orderID = null;//订单ID DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(10240000); try { ServletFileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding("utf-8"); @SuppressWarnings("rawtypes") List fileList = null; try { fileList = upload.parseRequest(request); } catch (FileUploadException ex) { return null; } @SuppressWarnings("unchecked") Iterator<FileItem> it = fileList.iterator(); //取参数 while (it.hasNext()) { FileItem item = it.next(); if(item.isFormField()&&"orderID".equals(item.getFieldName())){ orderID = Integer.valueOf(item.getString()); } }
if(orderID==null){ json.setMsg("参数有误,请刷新重试!"); return json; } } catch (Exception e) { e.printStackTrace(); json.setMsg("上传失败"); }finally{ factory = null; } return json; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统