Spring Mvcを使用しており、 JavaScriptファイルでEL変数(例${pageContext.request.contextPath}
)を使用したいと思います。.js
これは可能ですか?もしそうなら、どのように?
Spring Mvcを使用しており、 JavaScriptファイルでEL変数(例${pageContext.request.contextPath}
)を使用したいと思います。.js
これは可能ですか?もしそうなら、どのように?
<script>
これを実現するもう 1 つの一般的な方法は、グローバル JS オブジェクト、変数、または初期化関数に追加して、タグ内の呼び出し JSP ページで JSTL 値 (contextPath など) を宣言することです。これらの値は、元の JSP ページによって呼び出される外部 JS ファイルで参照できます。
参照: 「JSP タグ内での JavaScript の使用」に対するこの回答
少し大雑把ですが、 JAWRなどのツールを使用している場合は、これが唯一の選択肢かもしれません。
JS を含むテンプレートを作成し、テンプレートに補間される変数として contextPath を渡すことができます。
@RequestMapping(value="path/to/handler", method = RequestMethod.GET, produces ="text/javascript")
public ModelAndView getJs(HttpServletRequest request) {
String contextPath = request.getContextPath();
return new ModelAndView("/path/to/js/", "contextPath", contextPath);
}
しかし、なぜこれを行う必要があるのでしょうか。コンテキスト パスはクライアントでも使用できます。
編集:
これが機能するには、テンプレートが処理されるようにViewResolverを設定する必要がある場合があります (まだ持っていない場合)。
ページには、通常どおりスクリプトを含めるだけです。
<script type="text/javascript" src="path/to/handler" />