日期:2014-05-18  浏览次数:20644 次

一个页面能提交多个form吗,如果能,后台怎么处理
比如form1.submit();form2.submit();
之所以问这个问题是因为我现在有个困惑,我在做一个文件上传的页面,
form如下
<form   name= "uploadForm "   method= "post "   action= "uploadfile.jsp "   enctype= "multipart/form-data ">
但是这样其他input里面的值就传不到后台了,所以我想用两个form,一个
上传文件,一个传值,不知道可行不

------解决方案--------------------
应该不行吧...
------解决方案--------------------
两个form 一个负责上传文件 另外一个是相关的信息 默认file为null不就成了
------解决方案--------------------
用一个form就可以实现你要的效果,一是用专用的上传组件,根据组建提供的接口就可以得到上一个页面的input值.如果不用组件就用javascript把参数和参数值加到url里传到uploadfile.jsp就可以了
------解决方案--------------------
一个页面可以使用多个FORM可以提交给不同的程序处理也可以提交给相同程序处理,只要你控制的没有问题,LZ的意思是想一次提交 2个FORM的内容吧? 写个script应该没问题。
------解决方案--------------------
vacuumboy(菜鸟依旧)
说的对.
------解决方案--------------------
菜鸟来帮忙顶顶
------解决方案--------------------
将form中的name定义不同的名字
------解决方案--------------------
一个表单就可以提交多个文件,要能提交多个表单,我觉得这是不可能的
------解决方案--------------------
写个SCRIPT
function subForms(){
form1.submit();
form2.submit();
}
这样不是两个一起提交?

------解决方案--------------------
一个页面里可以写2个form,但是楼主的问题没有必要写两个form,传一个标志位,判断是传文件还是传值就可以了。
------解决方案--------------------
楼主的问题我在前些日子也遇到过,不如要做一个文章配图(表单提交文章标题,内容等信息,文章配图是通过type= 'file '来上传一幅图片),分开来做十分简单,表单提交到servlet通过javabean实现添加,上传使用jspsmartupload.jar也十分方便,但是两者合一是否可以实现呢?

我做的是通过一个jump.jsp来实现的,说白了就是先上传后提交
在jump.jsp

<%@ page contentType= "text/html;charset=GBK " %>
<%@ page language= "java " import= "com.jspsmart.upload.* "%>
<jsp:useBean id= "mySmartUpload " scope= "page " class= "com.jspsmart.upload.SmartUpload " />

<HTML>
<BODY BGCOLOR= "white ">
<%
//初始化文件名和上传结果
String FileName = "noImage ";
String result = "error ";
try
{
// 执行初始化操作
mySmartUpload.initialize(pageContext);
//限制文件上传格式
mySmartUpload.setAllowedFilesList( "jpg,gif,bmp,jpeg ");
// 上传文件到服务器
mySmartUpload.upload();

//如果有文件上传
if(mySmartUpload.getFiles().getCount()> 0)
{
// 取出文件
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
//
//如果文件存在
if(myFile.getSize()> 0)
{
String k = myFile.getFileExt();
java.util.Date d = new java.util.Date();
FileName = d.getTime()+ k;
myFile.saveAs( "/upload/ " +FileName);
result= "success ";
}
else
{
System.out.println( "文件不存在! ");
//result= "error ";
}
}
else
{
System.out.println( "没上传! ");
//result= "error ";
}
}
catch(Exception ex)
{
System.out.println(ex);