首页 新闻 赞助 找找看

如何在jsp页面手动修改<c:forEach> 标签中的items

0
[待解决问题]

如题,目前项目中需要在jsp中使用<c:forEach>遍历,但由于遍历对象需要根据页面其他操作进行确定,所以无法由后台进行赋值,需要在jsp页面中组装好遍历对象,再赋值给<c:forEach>标签,请问各位大佬有什么方法能够实现吗?
跪谢 orz

听丶风来的主页 听丶风来 | 菜鸟二级 | 园豆:204
提问于:2020-05-22 11:15
< >
分享
所有回答(1)
0

3个步骤:
1.jsp中可以遍历多少个对象,就让后台传回来多少个对象;
2.jsp中对每个传回的对象都是用<c:forEach>进行遍历,但是每一个c:forEach遍历出来的数据都不显示(可以设置css的display:none);
3.根据页面的操作,来选择让哪一个c:forEach显示(通过js修改display属性,让DOM显示即可),页面变化的时候,也是这个道理。

寻觅beyond | 园豆:923 (小虾三级) | 2020-05-24 12:41

但目前需要遍历的对象数目不确定,可能会有很多个,接口一次性返回性能可能会有问;
有什么办法能够每次通过接口获取需要遍历的对象,并手动赋值给c:forEach吗?

支持(0) 反对(0) 听丶风来 | 园豆:204 (菜鸟二级) | 2020-05-25 09:37

@听丶风来: 那就用Ajax(xhr),根据前端页面的操作,异步去调用后端接口,需要什么数据就让后端提供什么数据

支持(0) 反对(0) 寻觅beyond | 园豆:923 (小虾三级) | 2020-05-25 10:17

@寻觅beyond: 现在就是打算这么动态去赋值,但我不知道c:forEach是否支持在前端页面手动赋值,如果支持的话该怎么去赋值。。。

支持(0) 反对(0) 听丶风来 | 园豆:204 (菜鸟二级) | 2020-05-25 10:18

@听丶风来: 为啥一定要用c:forEach呢,js的循环遍历不香吗?js循环遍历后,替换DOM节点不就行了

支持(0) 反对(0) 寻觅beyond | 园豆:923 (小虾三级) | 2020-05-25 10:20

@寻觅beyond: 因为这整个页面都是动态的,forEach如果可以手动赋值的话会方便很多

支持(0) 反对(0) 听丶风来 | 园豆:204 (菜鸟二级) | 2020-05-25 10:23

@听丶风来: 你说的动态应该是数据是动态的吧,jsp的forEach会比js的forEach方便多少?无非就是几个变量的名的问题

支持(0) 反对(0) 寻觅beyond | 园豆:923 (小虾三级) | 2020-05-25 10:30

@寻觅beyond: 但如果按照你说的方法,整个页面的dom结构就得在js代码里手动拼起来,这个还是挺麻烦的

支持(0) 反对(0) 听丶风来 | 园豆:204 (菜鸟二级) | 2020-05-25 10:32

@听丶风来: depend on yourself,我只是说了我的看法

支持(0) 反对(0) 寻觅beyond | 园豆:923 (小虾三级) | 2020-05-25 10:35

@寻觅beyond: 嗯,多谢,我再试试看~

支持(0) 反对(0) 听丶风来 | 园豆:204 (菜鸟二级) | 2020-05-25 10:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册