时间:2020-10-16 13:07:22 | 栏目:JSP代码 | 点击:次
在jstl里面有fn:contains(str,str)这样的方法来判断字符串是否包含另一个字符串,可是没有判断list是否包含string的方法,所以就自己写了一个方法
contains.tag:
<%@ tag import="java.util.List" %> <%@ tag import="org.apache.commons.lang3.StringUtils" %> <%@ tag import="java.util.Arrays" %> <%@tag pageEncoding="UTF-8"%> <%@ attribute name="srcStr" type="java.lang.String" required="true"%> <%@ attribute name="separatorChars" type="java.lang.String" required="false"%> <%@ attribute name="str" type="java.lang.String" required="true"%> <% String sepChars=separatorChars==null?"-":separatorChars; String[] splitChars = StringUtils.split(srcStr, sepChars); List<String> list = Arrays.asList(splitChars); if(list.contains(str)) {%> <jsp:doBody/> <%} %>
然后在需要使用的这个方法的页面上加上一句:
<%@ taglib prefix="gms" tagdir="/WEB-INF/tags" %>
这样就可以直接使用
<gms:contains srcStr="${srcStr }" str="${str }"> str </gms:contains>
这样子就可以判断了。