动态获取文件域和文本框的值的问题

时间:2021-12-03 04:23:00
我现在在用JSP做一个程序,涉及到多文件上传,我写了一个文件上传的页面,用JS动态增加表单中的文件域和文本框,但是不知道该如何在另一个页面获取他们的值,现把表单页贴出来,麻烦大家帮忙看一下啊。谢谢了哦。
<html>
<head>
</head>
<body>
<form action="testDealMore.jsp" method="post" enctype="multipart/form-data" name="form1">
<TABLE >
        
        <TR >
             <TD >语音文件:</td>
            <td id="file" >
            <input type="file" name="file1"> 答 案: <input type="text" name="key1" />
            <input type="button" value="增加" onClick="AddMore()">
            </td>
        </tr>
                   <input type="submit" name="Submit" value="上传">
               
    </table>    
    </form>
<script type="text/javascript">
        var i = 1;
        function AddMore(){
    i++;
            var more = document.getElementById("file");
            var br = document.createElement("br");
            var input = document.createElement("input");
var text = document.createElement("input");
            var button = document.createElement("input");
            
            input.type = "file";
            input.name = "file" + i;

text.type = "text";
text.name = "key" + i;
            
            button.type = "button";
            button.value = "删除";
            
            more.appendChild(br);
            more.appendChild(input);
more.appendChild(text);
            more.appendChild(button);
            
            button.onclick = function(){
                more.removeChild(br);
                more.removeChild(input);
more.removeChild(text);
                more.removeChild(button);
            }; 
        }
    </script>
</body>
</html>

11 个解决方案

#1


最近都怎么了 怎么总是没人回答呢 累啊

#2


document.getElementByNmae("");
你在另一个页面试试  就知道了 

#3


request.getParameter 好像提交到jsp  from也能获取

你试下

#4


引用 2 楼 qq271175778 的回复:
document.getElementByNmae("");
你在另一个页面试试  就知道了

那样的话是在JS中获取吧,我要是想在JSP中获取呢?还有就是我的名字都是动态的,获取的时候该以什么标志呢?

#5


去别处逛逛,这里人真少啊

#6


多文件上传比较复杂,如果你用的是struts的话,需要在actionform中定义
一个List类型的fileList,里面存的是要上传的file,在action中得到这个
fileList就可以了。

#7


我是新手,没太接触过struts,用的都纯JSP,再加点Javabean,不知道该怎么实现,不能直接在JSP中获取哦吗

#8


先得到名字,然后再用得到值request.getParameter 
Enumeration   enum   =   request.getParameterNames();   
          String   paramName   =   null;   
                    while(enum.hasMoreElements())   {         
                            paramName   =   (String)enum.nextElement();   
                            System.out.println(paramName); }   

    

#9


引用 8 楼 l471025316 的回复:
先得到名字,然后再用得到值request.getParameter
Enumeration  enum  =  request.getParameterNames(); 
          String  paramName  =  null; 
                    while(enum.hasMoreElements())  {       
                            paramName  =  (String)enum.nextElement(); 
                            System.out.println(paramName); } 

   

先回去试一下

#10


Enumeration这是什么类型啊 枚举的吗
提示说找不到这个数据类型
另外我还有个疑问,request.getParameterNames()这个方法获取的是文件域还是文本框的名字呢
它们都是动态生成的

#11


刚忘了引入包了,引入之后,不再报错了,但是页面跳转之后什么也不输出,tomcat也不显示异常信息。

#1


最近都怎么了 怎么总是没人回答呢 累啊

#2


document.getElementByNmae("");
你在另一个页面试试  就知道了 

#3


request.getParameter 好像提交到jsp  from也能获取

你试下

#4


引用 2 楼 qq271175778 的回复:
document.getElementByNmae("");
你在另一个页面试试  就知道了

那样的话是在JS中获取吧,我要是想在JSP中获取呢?还有就是我的名字都是动态的,获取的时候该以什么标志呢?

#5


去别处逛逛,这里人真少啊

#6


多文件上传比较复杂,如果你用的是struts的话,需要在actionform中定义
一个List类型的fileList,里面存的是要上传的file,在action中得到这个
fileList就可以了。

#7


我是新手,没太接触过struts,用的都纯JSP,再加点Javabean,不知道该怎么实现,不能直接在JSP中获取哦吗

#8


先得到名字,然后再用得到值request.getParameter 
Enumeration   enum   =   request.getParameterNames();   
          String   paramName   =   null;   
                    while(enum.hasMoreElements())   {         
                            paramName   =   (String)enum.nextElement();   
                            System.out.println(paramName); }   

    

#9


引用 8 楼 l471025316 的回复:
先得到名字,然后再用得到值request.getParameter
Enumeration  enum  =  request.getParameterNames(); 
          String  paramName  =  null; 
                    while(enum.hasMoreElements())  {       
                            paramName  =  (String)enum.nextElement(); 
                            System.out.println(paramName); } 

   

先回去试一下

#10


Enumeration这是什么类型啊 枚举的吗
提示说找不到这个数据类型
另外我还有个疑问,request.getParameterNames()这个方法获取的是文件域还是文本框的名字呢
它们都是动态生成的

#11


刚忘了引入包了,引入之后,不再报错了,但是页面跳转之后什么也不输出,tomcat也不显示异常信息。