我有2个普通文本字段和1个要上传的上传字段。 Apache Tomcat FileUpload page中建议的getFieldName();
似乎只获取input
html标记的name属性,而不是输入的参数。
getRelDate = fi.getFieldName();
的结果为'date'。
此外,如果我对两个普通文本字段使用getFieldName()
,则它们具有相同的结果。
如何获取多个普通文本字段的参数?
Html代码:
<!-- normal text fields -->
<td>Release Date</td>
<td><input type='text' size=30 name='date'></td>
<td>Apple</td>
<td><input type='text' size=30 name='apple'></td>
<!-- upload field -->
<td>Image Upload</td>
<td><input type='file' size=30 name='imagefile'></td>
JSP代码:
String getRelDate = "";
String getApple = "";
try{
// Parse the request to get file items.
List fileItems = upload.parseRequest(request);
// Process the uploaded file items
Iterator i = fileItems.iterator();
while ( i.hasNext () )
{
FileItem fi = (FileItem)i.next();
if ( fi.isFormField () ){
getRelDate = fi.getFieldName();
getApple = fi.getFieldName();
}
// Get the uploaded file parameters
File file2 = new File(filePath,fi.getName());
fi.write(file2);
out.println("Uploaded Filename: " + filePath + fi.getName() + "<br>");
}
}
答案 0 :(得分:1)
首先,您要遍历表单字段,并为每个表单字段设置 getRelDate
和 getApple
的名称该领域。
其次,您要设置字段名称,而不是字段值。
考虑reading over the documentation for the libraries you try to use。
Nutshell是如果它是一个简单的表单字段,请使用getString()
返回字段内容。
如果是文件,则上面提供的链接中会详细介绍几个选项。