求助freemarker 双层循环问题

我用了bootstrap-multiselect插件,是可以实现下拉框多选的情况,下面是修改页面。集合list1(所有选修科目id){1,2,3,4,5}集合list2(... 我用了bootstrap-multiselect插件,是可以实现下拉框多选的情况,下面是修改页面。

集合list1 (所有选修科目id) {1,2,3,4,5}
集合list2 (该学生已选择的科目) {1,2}
<select>
<#list list1 as a >
<#list list2 as b >
<#if a==b>
<option value="1" selected="selected">1</option>
<#break>
<#else>
<option value="1" selected="selected">1</option>
</#if>
</#list>
</#list>
</select>

输出结果应该 : 可惜结果是这样:
1 被选中 1 被选中
2 被选中 2
3 2 被选中
4 3
5 3
4
4
5
5
求大神教怎么写循环逻辑
展开
 我来答
扣Q923465786
2018-03-27 · TA获得超过933个赞
知道小有建树答主
回答量:1989
采纳率:88%
帮助的人:208万
展开全部
首先,你插入checkbox的代码放错位置了,应该放在外层循环,放在内层循环的话会重复插入tkbhList长度的checkbox;其次,内层循环只需判断ID相同的项就设置默认选中,内层循环只需做判断就可以了,以下是我修改后的代码,你可以试试。
<#list bmList as dpt>
<#if tb.tkbhList??>
<input type="checkbox" name="dpts" value="${dpt.id! }"
<#list tb.tkbhList as tkbh>
<#if dpt_index%4 = 3>checked="checked"</#if>
</#list>
>${dpt.name! } <br />
</#if>
</#list>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式