一般從 JSP文件中,可以直接使用 ${pageContext.request.contextPath}非常方便的獲得當前頁面的路徑,用來處理被 Apache2代理之后出現 URL變化的問題,比如增加了某些前綴,方便轉發,即使是 JSP內嵌的 JavaScript腳本,也是可以如此操作。但是如果是一個獨立的 JavaScript文件,通過
這樣的方式引入,則在 JavaScript文件內部是無法直接調用 ${pageContext.request.contextPath}獲取前綴的,因為 ${pageContext.request.contextPath}是需要 JSP文件處理的變量,而對於獨立的 JavaScript文件,默認是不做任何處理的。
因此這個變量只能是通過某個全局變量傳遞到 JavaScript文件中。
目前比較有效的實現方法是通過設置一個隱藏的文本框的方式來處理。
JavaScript文件中獲取這個變量的方法如下:
1
2
3
|
$(document).ready(function() {
var pageContext = g("PageContext").value;
});
|