1

これを以下のような値と比較する必要があります。

${page_id } ---- <% out.print(a); %>

<c:if test="${page_id != a}">

これどうやってするの?

4

1 に答える 1

3

「a」がスクリプトレット変数であると仮定します。El 式は、スコープ内のページ/リクエスト/セッション/アプリケーション属性にマップされます。

${page_id} は、pageContext.findAttribute("page_id"); とほぼ同等です。

それらを比較できるようにするには、それらを同じスペースに入れる必要があります。これを行う 1 つの方法は、スクリプトレット コードを使用することです。

<% pageContext.setAttribute("a", a); %>

${a} に EL 式としてアクセスできるようになりました。スクリプトレット コード (JSP では避けるべきもの) を使用するため、推奨される解決策ではありません。もちろん、もっと良い方法があるかもしれません。それはすべて、そもそも「a」の値がどこから来たのかによって異なります。

于 2009-03-04T20:59:10.070 に答える