私はJSPページを使用しているアプリケーションを設計しています。今私は表示されている現在のページを示すものが必要です。基本的には、私はすべてのページを持つメニューが必要です。私はclass = "active"を現在のページに置きます。class = "active"をアクティブなページに設定するには
どうすればよいですか?助言がありますか? ありがとう!
私はJSPページを使用しているアプリケーションを設計しています。今私は表示されている現在のページを示すものが必要です。基本的には、私はすべてのページを持つメニューが必要です。私はclass = "active"を現在のページに置きます。class = "active"をアクティブなページに設定するには
どうすればよいですか?助言がありますか? ありがとう!
あなたが要素にクラス=「アクティブ」を設定することができ、メニューに続いて、現在のURL
<% String URL = request.getRequestURL(); %>
を取得する必要がある場合(URLから「現在のページ」を検索したり、)現在のURL
<c:set var="currentPage" value="${fn:substring(pageContext.request.servletPath, 1, -1)}" />
<ul>
<c:forEach items="${bean.menu}" var="item">
<li><a href="${item.link}"${item.link == currentPage ? ' class="active"' : ''}>${item.name}</li>
</c:forEach>
</ul>
これはList<Menu>
、トンであることを${bean.menu}
を前提としています。メニューの要素(タイトル、ID ...で)あなたは「アクティブ」になりたい
キックオフ例を一致彼はhome.jsp
のようなパス名を返すためのプロパティlink
とname
と${item.link}
と豆、contact.jsp
(またはあなたがなどコントローラサーブレット、home
、contact
を、使用している場合)であることをMenu
。
fn:substring()
は、先頭のスラッシュを取り除きます。 ELの条件演算子?:
は、条件が真の場合のみクラスを出力し、それ以外の場合は出力しません。
Hmは動作していないようです。私は私が今どのように以下の例を投稿するとき、それが役に立てば幸い: " alt="cal" width="20" height="20" class="icon" /> –