当前位置: 代码迷 >> Java Web开发 >> 如做上传图片,jsp获取文本框的值为空.如不做上传力片,则jsp获取文本框的值正确,为什么解决方案
  详细解决方案

如做上传图片,jsp获取文本框的值为空.如不做上传力片,则jsp获取文本框的值正确,为什么解决方案

热度:72   发布时间:2016-04-17 11:08:48.0
如做上传图片,jsp获取文本框的值为空.如不做上传力片,则jsp获取文本框的值正确,为什么
<FORM METHOD="POST" ACTION="do_upload.jsp" ENCTYPE="multipart/form-data">  
<input type="text" name="username">
<input type="text" name="password">
<input type="file" name="productPicture">
<input type="file" name="ssPicture">
<input type="submit" name="提交">
</form>
我在do_upload.jsp页面中system.out.println(request.getParameter("username"))的值为null,但上传的图片是正确的,如去掉
<input type="file" name="productPicture">
<input type="file" name="ssPicture">这两行.
system.out.println(request.getParameter("username"))能获得从文本框中的值.也就
是说是正确的,这是为什么呢?很迷茫

注:我的处理上传图片和request.getParameter("username")是同一个servlet


------解决方案--------------------
你用什么处理上传文件的,给你点代码看看,处理方式不一样
Java code
// 循环处理所有文件           while (fileItr.hasNext()) {               FileItem fileItem = null;               String path = null;               long size = 0;               // 得到当前文件               fileItem = (FileItem) fileItr.next();               // 忽略简单form字段而不是上传域的文件域(<input type="text" />等)               if (fileItem == null || fileItem.isFormField()) {                   continue;               }               // 得到文件的完整路径               path = fileItem.getName();               // 得到文件的大小               size = fileItem.getSize();               if ("".equals(path) || size == 0) {                   out.println("得到文件的完整路径,请选择上传文件<p />");                   out.println("<a href=\"index.jsp\" target=\"_top\">返回</a>");                   return;               }
  相关解决方案