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 に答える