claim voucher update表单问题
老师您好,想问下这里的c:foreach 为什么不能用之前使用过的var属性定义一个变量,来代替DTO中items的变量名呢
<c:forEach items="${claimVoucherDTO.items}" var="voucherItems" varStatus="ind">
<div class="section row" id="items">
<div>
<form:hidden path="voucherItems[${ind.index}].id"/>
<form:hidden path="voucherItems[${ind.index}].claimVoucherId"/>
<div class="col-md-3">
<label for="voucherItems[${ind.index}].item" class="field prepend-icon">
<form:select path="voucherItems[${ind.index}].item" cssClass="gui-input" placeholder="花销类型..." items="${items}"/>
</label>
</div>
<div class="col-md-3">
<label for="voucherItems[${ind.index}].amount" class="field prepend-icon">
<form:input path="voucherItems[${ind.index}].amount" cssClass="gui-input money" placeholder="金额..."/>
<label for="voucherItems[${ind.index}].amount" class="field-icon">
<i class="fa fa-lock"></i>
</label>
</label>
</div>
<div class="col-md-5">
<label for="voucherItems[${ind.index}].comment" class="field prepend-icon">
<form:input path="voucherItems[${ind.index}].comment" cssClass="gui-input" placeholder="备注..."/>
<label for="voucherItems[${ind.index}].comment" class="field-icon">
<i class="fa fa-lock"></i>
</label>
</label>
</div>
<div class="col-md-1" style="text-align:right;">
<button type="button" class="button"> X </button>
</div>
</div>
</div>
</c:forEach>我使用这种方法会导致页面加载不出来voucherItems
谢谢
正在回答
同学你好,1、非常抱歉之前老师对var的描述有些不准确,在<c:foreach>标签中var其实表示的是当前条目的变量名称,比如:

运行结果:

所以var表示的是当前条目的变量名称。对给同学造成的不便深感抱歉。
2、当前页面使用了modelAttribute,modelAttribute:绑定 后台传过来的数据。
使用spring提供的form表单时,可以通过设置modelAttribute属性,将所有表单要提交的内容都封装到一个对象中进行提交。
所以这里建议直接写为items属性名,便于封装对象进行提交。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
同学你好,1、课程案例中这里的items是指ClaimVoucherInfo下的items的集合


比如:items[0].item和items[0].amount就是指某一条报销单的花销类型以及报销金额,所以这里在具体的数据遍历具体写法是items[[${sta.index}].comment。
2、新创报销单的时候,如果把初始的费用明细条目删除掉再点击+按钮,这个按钮就失效了
这是因为在js中删除元素时,使用了

:last 选择器选取最后一个元素,删除之后再添加时,获取不到子元素了,所以就没有效果了

这个属于js中的内容,同学如果有兴趣,可以在删除方法中添加一个判断。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
- 参与学习 人
- 提交作业 323 份
- 解答问题 8263 个
本阶段将带你学习主流框架SSM,以及SpringBoot ,打通成为Java工程师的最后一公里!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星