解决post提交表单(文件上传) request.getParameter 取值为空的问题
2012-08-23 16:00
525 查看
像碰到form表单中既有文件上传,又有接收的字段的时候,字段想用 request.getParameter 来得到,往往是null
<form action="FileUpload" method="post" enctype="multipart/form-data" name="form1">
<input type="text" name="text">
<input type="file" name="file">
<input type="button" name="Submit" value="upload" onclick="ok()">
</form>
如上在public void doPost(HttpServletRequest request, HttpServletResponse response) 中调用request.getParameter("text")得到的是null
怎么才能得到呢?有两种解决方案
1、用两个表单: (比较麻烦)
一个采用POST提交的文件上传的from ,一个采用GET提交的字段的from ,再将第二个form的值作为第一个的参数
function ok() {
var name = form2.name.value;
var title= form2.title.value;
form1.action="FileUpload?name="+name+"&title="+title;
form1.submit();
}
2、commons-fileupload 判断fieldName,来区分是上传的文件还是字段
ServletFileUpload upload = new ServletFileUpload(factory);
try {
List items = upload.parseRequest(request);
for (Iterator i = items.iterator(); i.hasNext();) {
FileItem fileItem = (FileItem) i.next();
String field = fileItem.getFieldName(); //判断fieldname,
if(field.equals("kind")){
kind = fileItem.getString();
continue;
}else if(field.equals("id")){
id = fileItem.getString();
continue;
}else if(field.equals("topic")){
topic = fileItem.getString();
continue;
}
3、jspSmartUpload 专门提供了 SmartUpload.getRequest().getParameter("text")
具体介绍见我另外一篇博客 http://blog.csdn.net/jazywoo123/article/details/7900114
<form action="FileUpload" method="post" enctype="multipart/form-data" name="form1">
<input type="text" name="text">
<input type="file" name="file">
<input type="button" name="Submit" value="upload" onclick="ok()">
</form>
如上在public void doPost(HttpServletRequest request, HttpServletResponse response) 中调用request.getParameter("text")得到的是null
怎么才能得到呢?有两种解决方案
1、用两个表单: (比较麻烦)
一个采用POST提交的文件上传的from ,一个采用GET提交的字段的from ,再将第二个form的值作为第一个的参数
function ok() {
var name = form2.name.value;
var title= form2.title.value;
form1.action="FileUpload?name="+name+"&title="+title;
form1.submit();
}
2、commons-fileupload 判断fieldName,来区分是上传的文件还是字段
ServletFileUpload upload = new ServletFileUpload(factory);
try {
List items = upload.parseRequest(request);
for (Iterator i = items.iterator(); i.hasNext();) {
FileItem fileItem = (FileItem) i.next();
String field = fileItem.getFieldName(); //判断fieldname,
if(field.equals("kind")){
kind = fileItem.getString();
continue;
}else if(field.equals("id")){
id = fileItem.getString();
continue;
}else if(field.equals("topic")){
topic = fileItem.getString();
continue;
}
3、jspSmartUpload 专门提供了 SmartUpload.getRequest().getParameter("text")
具体介绍见我另外一篇博客 http://blog.csdn.net/jazywoo123/article/details/7900114
相关文章推荐
- 表单包含file上传文件提交,使用ajaxSubmint或者ajaxForm 遇到的问题以及解决方法
- CURL模拟表单post提交及相关常用参数的使用(包括提交表单同时上传文件)
- 关于文件上传和普通字段表单提交的问题
- 简单解决 multipart/form-data 文件上传表单中 传递参数无法获取的办法! (解决办法:动态更改表单提交URL)
- jquery-form中ajaxSubmit提交文件,以及解决ie9下上传文件后自动下载问题
- 【原创】AJAX上传文件,formdata表单提交问题
- 解决YII提交POST表单出现400错误,以及ajax post请求时出现400问题
- 解决DWZ文件上传表单提交
- 文件的上传+下载+表单的重复提交问题 +自定义拦截器:
- 简单解决 multipart/form-data 文件上传表单中 传递参数无法获取的办法! (解决办法:动态更改表单提交URL)
- 解决Spring Security 表单上传文件CSRF失效的问题
- JSPSmart实现文件上传时file和text表单同时提交的问题
- Django开发中form表单post提交出现403问题解决
- jqeury form 提交表单的问题(上传文件进度)
- 文件上传(jspsmart实现)file和text表单同时提交的问题
- spring mvc 3.0 中解决post表单提交出现的中文乱码问题
- php 利用fsockopen GET/POST 提交表单及上传文件
- php 利用fsockopen GET/POST 提交表单及上传文件
- Struts2文件上传下载和表单重复提交问题