【java基础】多文件上传(1)--前台编写
需求:
页面上使用jQuery实现“新增一个附件”,“删除附件”。但至少保留一个。
详细的操作方法或具体步骤
1.新建upload2.jsp页面作为新的测试页面

2.原始表单如下

3.运行效果

4.引入jQuery文件

5.给新增按钮添加如下事件,实现点击一下“新增一个附件”就增加一个上传的单元

6.测试效果如下:

7.实现删除效果,注意删除的i也是随着增加而增加的。
而删除的时候,以删除按钮为节点,删除它前边的两个tr

8.点击删除按钮,删除第三个元素

9.删除后的效果,说明我们的删除代码已经完成

10.但是现在有个问题,就是删除后,后边的4,5单元并没有重新排序,而是突兀的中间少了3
我们希望的效果是删除后,顺序仍然按照1,2,3,4,5排序
所以新增如下代码
首先给两个tr添加两个类标识,以便jQuery获取到

11.别忘了新增的js中的代码

12.但点击删除按钮的时候,对i进行重新排序
首先实现对file单元进行排序,
需要处理的有File的text展示,和input选择框的name属性

13.删除第三个元素

14.发现File的确按照顺序重新排序了,选择框的name属性可以通过firebug来查看

15.同理,处理desc单元

16.同样删除第三个元素

17.删除后的单元减少一个,后续的,4,5重新排序为3,4

18.以上已经实现了删除,和删除后的重新排序。
但这里仍然有个BUG,那就是删除后,新增的单元,仍然按照以前的顺序来排的

19.解决这个BUG,就是重新计算下i的值,当我们新增一个单元的时候,不再按照从2新增,而是通过计算desc的个数(或者file的个数)来判断有多少个单元,从而给i重新赋值

20.从头开始模拟下效果
首现运行页面,初始效果如下:

21.新增了5个单元后,删除第二个单元

22.剩余的单元重新排序

23.在点击新增附件 新增的两个单元,仍然排序

24.以上就是多文件上传的前台效果了,重点就是对i的判断和jQuery新增删除一个单元的代码
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。作者声明:本教程系本人依照真实经历原创,未经许可,谢绝转载。- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
