0

我正在检索 2 个值(用户 ID 和配置文件 ID),并将它们设置在变量 userId 和 profileId 中,如下所示。

<s:set name="userId" value="#session.User.id"/>
<s:set name="profileId" value="%{#parameters['id']}"/>

<s:if test="%{#userId} != %{#profileId}" >

<a href="#" title="Follow" id="follow-btn">
<img src="theme/images/follow.png" alt="like" />
<span>Follow</span>
</a>

</s:if>

我已经使用<s:property value="%{#userId}" />and进行了测试,<s:property value="%{#profileId}" />并且它们都能够显示出该值。但是我无法让它在 if 标签中工作。现在,无论这 2 个变量中的值是什么,链接按钮都不会显示。

我不确定 if 标记语句是否正确但是我尝试了很多组合(玩弄%{}and ' '

我觉得它与数据类型有关,但无论我做什么,比较表达式似乎都不起作用..

加油!~

更新: 好的,我发现问题出在#profileId. 可能是因为该值是从中#parameters['id']返回一个字符串值的。有没有办法将此值转换为int?我试过Integer.parseInt(#profileId)了,但这不起作用。

4

1 回答 1

1

尝试使用这个:

<s:if test="#userId != #profileId" >
于 2012-07-26T00:58:06.217 回答