2017-04-04 4 views
0

私はタグを使ってアプリケーションのグローバルレイアウトに自分のアプリケーションのボディを挿入しています。 .jspファイルで宣言された新しいcss/jsファイル(アプリ固有)をタグに挿入しようとしています(明確であればわかりませんが、コードで明確にする必要があります)jspファイルからタグに変数を渡す

私のラッパーですファイル(ビット簡体字):私は新しいCSS/JSを挿入するJSPファイルの変数に宣言したいと思います

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<%@taglib prefix="t" tagdir="/WEB-INF/tags" %> 

<t:wrapper> 
    <div class="container"> 
     <form class="form-signin"> 
      <h2 class="form-signin-heading">Please sign in</h2> 
      <label for="inputEmail" class="sr-only">Email address</label> 
      <input type="email" id="inputEmail" class="form-control" placeholder="Email address" required autofocus> 

      <label for="inputPassword" class="sr-only">Password</label> 
      <input type="password" id="inputPassword" class="form-control" placeholder="Password" required> 

      <div class="checkbox"> 
       <label> 
        <input type="checkbox" value="remember-me"> Remember me 
       </label> 
      </div> 

      <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button> 
     </form> 
    </div> 
</t:wrapper> 

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 
<%@tag description="Wrapper Tag" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
<head> 
    <title>Title of the page</title> 
    <meta charset="utf-8" /> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 
    <meta name="robots" content="noindex,nofollow" /> 

    <!-- Bootstrap --> 
    <!-- Latest compiled and minified CSS --> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> 

    <!-- Custom styles --> 
    <spring:url value="/resources/core/css/style.css" var="coreCss" /> 
    <link href="${coreCss}" rel="stylesheet" /> 

    <!-- jQuery --> 
    <script src="https://code.jquery.com/jquery-3.2.1.min.js" crossorigin="anonymous"></script> 
    <!-- Bootstrap --> 
    <!-- Latest compiled and minified JavaScript --> 
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> 

    <!-- Custom scripts --> 
    <spring:url value="/resources/core/js/script.js" var="coreJs" /> 
    <script src="${coreJs}"></script> 
</head> 
<body> 
    <div class="content"> 
     <div class="app-content"> 
      <jsp:doBody/> 
     </div> 
    </div> 
</body> 
</html> 

そして、ここではそのタグを使用するJSPファイルの例ですラッパータグの<head>にロードするファイル。

答えて

0

私は方法を見つけました。ここでそれを達成する方法があります。

ただ、JSPファイル内のタグの呼び出しで属性を渡す:

<spring:url value="/resources/user/css/login.css" var="loginCss" /> 

<t:wrapper css="${loginCss}"> 

とラッパータグの<head>に追加します。

JSのための同じ
<%@ attribute name="css" %> 
<c:if test="${!empty css}" > 
    <link href="${css}" rel="stylesheet" /> 
</c:if> 

関連する問題