2 xingyuxinmeng xingyuxinmeng 于 2016.02.17 09:29 提问

jsp中el表达式问题,急!!!求大神!

我从后台传入一个ArrayList给jsp,然后我要在jsp的foreach循环中判断这个字符串数组中是否包含我的foreach中每次遍历的一个值,应该怎么做。
代码是这样的,后台的ArrayList中有[2,3,4,5],传check给jsp,然后jsp中的代码是这样的:

 <c:forEach items="${compRole }" var="t" varStatus="index" >

                                                                <input type="checkbox" id="compRole" name="compRole" value="${t.id }" checked="<c:if test='${fn:contains(check,t.id)}'>checked</c:if>" >&nbsp;${t.name }&nbsp;&nbsp;&nbsp;&nbsp;

                                                        </c:forEach>

这里我该如何在循环中每次都判断传进来的check中是否包含t.id,如果包含则复选框前打对勾。

5个回答

sinat_28474983
sinat_28474983   2016.02.17 09:53

再来一个foreach不就好了

sinat_31535993
sinat_31535993   Rxr 2016.02.17 10:02

check==t.id:true?false

Royal_lr
Royal_lr   Ds   Rxr 2016.02.17 10:15

这样的在js中做要好一点,,

qq_25093755
qq_25093755   2016.02.17 10:33

可以在后台进行数据处理,用ajax接收,在页面做判断

yupeikang
yupeikang   2016.02.17 11:19

两种方式:
1、不用el表达式;在后台给t的对应类,增加一个xxFlag的属性,再get、set,在后台循环集合,判断,设置属性;在页面直接用个if就好了
2、用EL表达式,现在你写这个看着挺靠谱的嘛,不好用还是怎么滴,找了个网页,参考下。
http://www.cnblogs.com/jerome-rong/archive/2013/03/21/2972700.html

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!