-
jquery的ajaxFileUpload插件的多参数上传后台获取到为null10
前台js :
$.ajaxFileUpload({
type: 'post',
url:sysUrl+'/uploadFileServlet',
dataType: 'json',
data:{
fileId:'fileId',
fileType:'fileType',
fileEnable:'fileEnable',
ofilePath:'ofilePath',
ozfilePath:'ozfilePath'
},
secureuri:false,
fileElementId:'filePath',
success: function (data) {
alert("success");
},error: function (data, status, e){
alert("fail");
}
后台 servlet :
String fileId = request.getParameter("fileId");
String fileType = request.getParameter("fileType");
String fileEnable = request.getParameter("fileEnable");
String ofilePath = request.getParameter("ofilePath");
String ozfilePath = request.getParameter("ozfilePath");
打出来的所有对象都是 null , 在网上找的解决方案比如更改ajaxfileupload.js这个文件里面的几个地方,改了还是屁用没有,还浪费我下载积分。。谁遇到过这个问题,帮办忙呗2014年7月27日 11:53
2个答案 按时间排序 按投票排序
-
String fileId = request.getParameter("fileId");
String fileType = request.getParameter("fileType");
String fileEnable = request.getParameter("fileEnable");
String ofilePath = request.getParameter("ofilePath");
String ozfilePath = request.getParameter("ozfilePath");
为什么要这样了?
既然前台是以json格式传过来 我先解析这个json 然后拿对应的值2014年7月28日 02:31
-
用第三方fileupload组件,
后台代码
/**
* 上传文件入口
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
RequestContext requestContext = new ServletRequestContext(request);
String saveFileName="";
String message="";
String result;
String basePath="";
String fileSize="0";
int fileLength=0;
boolean success=true;
if (FileUpload.isMultipartContent(requestContext)) {
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setHeaderEncoding("utf-8");//设置编码,防止中文文件名乱码
upload.setSizeMax(Constants.FILE_UPLOAD_MAX_SIZE);
List items = new ArrayList();
try {
items = upload.parseRequest(request);
} catch (FileUploadException e1) {
success=false;
message="文件上传发生错误:" + e1.getMessage();
}
String randomUnid = (new SimpleDateFormat("yyyyMMddHHmmss")).format(new Date());
Iterator<?> it = items.iterator();
while (it.hasNext()) {
FileItem fileItem = (FileItem) it.next();
if (!fileItem.isFormField()) {
if (fileItem.getName() != null && fileItem.getSize() != 0) {
saveFileName=randomUnid+this.getExpandName(fileItem.getName());
basePath=Constants.getAppPath()+Constants.FILE_SEPARATOR+Constants.ATTACHMENT_PATH+Constants.FILE_SEPARATOR;
File attachmentDir=new File(basePath);
if(!attachmentDir.exists()){
attachmentDir.mkdir();
}
File newFile = new File(basePath+ saveFileName);
fileLength=fileItem.getInputStream().available();
fileSize=formetFileSize(fileLength);
try {
fileItem.write(newFile);
} catch (Exception e) {
success=false;
message="文件上传发生错误:" + e.getMessage();
e.printStackTrace();
}
} else {
success=false;
message="文件没有选择 或 文件内容为空";
}
}//end if
}//end while
}//end if
response.setHeader("Content-type", "text/html;charset=UTF-8");
OutputStream out = response.getOutputStream();
out.write("<meta http-equiv='content-type' content='text/html;charset=UTF-8'>".getBytes());
result="{success:'"+success+"'," +
"message:'"+message+"'," +
"saveFileName:'"+Constants.getAppPath()+"temp/"+ saveFileName+"'," +
"relativeFileName:'temp/"+ saveFileName+"'," +
"fileSize:'"+fileSize+"',"+
"fileLength:'"+fileLength+"'"+
"}";
out.write(result.getBytes());
out.close();
}2014年7月27日 21:54
相关推荐
jquery ajaxfileupload上传插件,用于ajax的异步文件上传
jquery ajaxfileupload.js异步上传插件
jQuery插件AjaxFileUpload用来实现ajax文件上传,该插件使用非常简单,接下来写个demo演示怎么用AjaxFileUpload插件实现文件上传。
jquery+ajaxfileupload+html文件上传,用ajaxfileupload插件做的上传文件
ajaxfileupload.js 异步上传jquery插件,亲测可用,有需要的可以选择下载
jQuery插件AjaxFileUpload用来实现ajax文件上传,该插件使用非常简单,接下来写个demo演示怎么用AjaxFileUpload插件实现文件上传。 1、引入AjaxFileUpload插件相关的js 复制代码 代码如下:[removed]resources/js/...
NULL 博文链接:https://cqjava.iteye.com/blog/2053119
ajaxFileUpload插件,支持单个文件上传,多文件请打包。
使用Jquery做上传文件处理时,用到了ajaxfileupload.js 这个第三方代码,但是这个js几乎就是半成品,问题很多。现在整理如下并附修复版的ajaxfileupload.js下载。 问题: 1:无法带参数提交,只能上传文件; 2:...
通过修改终于使得ajaxfileupload兼容jquery3,代码已上线运行。
包含jar包:ajaxfileupload.js jquery-1.7.1.js jquery-1.10.2.js json2.js
文件上传几乎是每个项目所必须的,这里介绍Asp.net MVC结合Jquery ajaxfileupload实现文件上传,兼容主流浏览器
NULL 博文链接:https://jianweicao.iteye.com/blog/1660904
NULL 博文链接:https://guomingzhang2008.iteye.com/blog/1739297
现在网上下载的上传插件(ajaxfileupload.js)很多都不支持通过设置data来传参,我这里改了一下。
主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
然后在ajaxFileUpload.js文件中修改两个函数,其实就是一个函数(给函数添加新的参数) 第一处: 代码如下:createUploadForm: function(id, fileElementId,data){}大于在26行吧。 然后在在函数体中加入以下代码: ...
平时用的比较多的JQuery图片上传插件是Uploadify这个插件,效果很不错,但是由于手机不支持flash,所以不得不再找一个文件上传插件来用了。后来发现ajaxFileUpload这个插件挺不错,所以就用这个插件来做异步上传文件...