Struts1.x系列教程(9):上传任意多个文件.docx
文本预览下载声明
上一篇: HYPERLINK /nokiaguy/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/02/03/253022.html Struts1.x系列教程(8):上传单个文件 HYPERLINK /nokiaguy/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2008/04/27/196646.html Struts2教程7:上传任意多个文件??? 从 HYPERLINK /nokiaguy/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/02/03/253022.html 《Struts1.x系列教程(8):上传单个文件》中给出的例子可以看出,在Struts1.x中上传单个文件是非常简单的,但在实际应用中,上传文件的个数一般是不确定的,如在网络硬盘中,用户可以根据自己的需要上传任意多个文件(当然,网络硬盘一次上传文件的数目一般也是有上限的,如50个,但用户可以只上传了3个文件,因此,在这种情况下,上传文件的个数也是不确定的)。如果读者用过“网易网盘”或其他类似的服务程序,它们的上传文件功能基本上都是根据用户选择的文件多少来添加要上传的文件(并不是一开始就在界面上放很多input type=’file’元素来让用户输入上传文件名)。为了让读者也可以使用Struts来实现这个功能,在本节将给出一个用Struts实现的类似“网易网盘”的上传任意多个文件的Web程序。在实现Web程序之前,让我们先看看图1所示的主页面。
图1
??? 在本程序中,用户通过在文本框中输入本地文件名或使用“浏览”按钮选择要上传的文件后,就会在界面的下方添加这个被录入的文件名,如果录入有误,或是不想上传某个文件,可以使用“删除”功能将当前文件删除。在确认正确录入所有的上传文件后,使用“上传”按钮开始上传文件。
??? 实现这个Web程序的基本步骤和 HYPERLINK /nokiaguy/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/02/03/253022.html 《Struts1.x系列教程(8):上传单个文件》一文中所给出的例子类似,我们可按下面五步来实现这个Web程序:
【第1步】建立上传文件的JSP页面??? 要想实现上述的功能,需要在JavaScript中使用DOM技术(关于JavaScript和DOM技术的相关内容已经超出本文讨论的范围,如果读者想了解JavaScript和DOM技术的细节部分,请参阅其他相关技术资料)。?? ??? 在samples工程目录目录中建立一个uploadMoreFile.jsp文件,代码如下:
??%@?page?pageEncoding=GBK%??%@?taglib?uri=/tags-html?prefix=html%??html??????head??????????title上传任意多个文件(总大小不能超过2M)/title??script?language=javascript??//?在DOM中插入一个上传文件列表项(div元素)和一个input?type=file/元素??function?insertNextFile(obj)???{?//?获取上传控制个数??????var?childnum?=?document.getElementById(files).getEle
显示全部