Struts 2 <s:if> contains()方法不适用于具有多个单词的字符串</s:if>

时间:2013-06-19 16:24:10

标签: java jsp if-statement struts2 contains

如果此人的帐户已逾期,我已获得以下代码来打印邮件。 (在此实例中提醒=“您的帐户已过期”)

<s:if test="%{#alert.contains('past due')}">

代码无效。但是,如果我拉出白色空格和第二个字,就像这样:

<s:if test="%{#alert.contains('past')}">

代码似乎工作正常并且消息被打印出来。

2 个答案:

答案 0 :(得分:0)

你可以试试吗

<s:if test="%{#alert.indexOf('past due')>0}">

测试问题是否与contains()方法的CharSequence参数有关(但是除了一个字符的字符串之外应该有效)

请注意,如果alert字符串来自Action的getter,则不需要#符号,因为它被推到堆栈顶部

答案 1 :(得分:0)

代码工作正常,但为了更好地使用matches()方法来获取子字符串的匹配。

<s:if test="#alert.matches('.*past due.*')">