JSPタグの使い方について。

Eclipseで、JSPプログラムを書いている際、条件付きで、HTMLの開始タグの属性を変更する場合。

普通に書くと、こんな感じです。


<%
if(true){
    %><開始タグ 属性1=""><%
        /*他の処理1*/
    %></終了タグ><%
}else{
    %><開始タグ 属性2=""><%
        /*他の処理1*/
    %></終了タグ><%
}
%>

しかし、このような書き方にすると、ifとelseの中の、タグ以外の処理内容が、まったく同じ場合で、処理内容が増えると、その分、同じ処理を増やしてしまうことになります。

そこで、このような書き方にすると、ifとelseの中の、タグのみが判断対象にされ、あとは、処理内容を1度書くだけで、シンプルな構文になります。


<%
if(true){
    %><開始タグ 属性1=""><%
}else{
    %><開始タグ 属性2=""><%
}
    /*他の処理*/
%>
</終了タグ>

ですが、Eclipseで、この書き方で記述した場合、終了タグ(</終了タグ>)がありません。と、エラー表示されます。

ここで、このような書き方に改良すると、解決します。


<開始タグ <% if(true){%>属性1=""<%}else{%>属性2=""<%} %>>
/*他の処理*/
</終了タグ>

このように、HTMLタグ内にJSPタグ<% %>を埋め込んで、その中に、if文を書き、判定条件に、異なる属性を付け加えれば、完成です。
先ほどの、2つのパターンより、シンプルな書き方になります。
しかも、Eclipseで、エラーが出ません。

今日は、HTMLタグの中に、JSPタグを埋め込むことができる事を知りました。
( ^^ω)おっおっおっ