0
基本上我有2個問題與JavaScript和jsp文件。首先關注的是我不能將externall js文件包含到jsp文件中。我的項目的基本結構看起來是這樣的:如何在jsp文件中包含js文件和初始化一些函數
system.web
|
WebContent
|
js
|
nowa_postac.js
|
jsp
|
nowa_postac.jsp
nowa_postac.js只有
init = function() {
test();
}
function test() {
var myObject = JSON.parse('${gson}', null);
alert(myObject.rasy.rasaList.length);
alert(document.getElementById("testowy").id);
}
我包含JavaScript裏面nowa_postac.jsp有:
<script type="text/javascript" src="${pageContext.request.contextPath}/js/nowa_postac.js"></script>
,但我不能在jsp文件中調用nowa_postac.js中的任何函數和
src="<c:url value="/js/nowa_postac.js"
似乎不能正常工作... test()只會返回警告(測試)返回文本,所以JavaScript文件被加載...此外,當test()位於jsp文件內時,一切正常。
第二個問題是關於如何在jsp頁面加載後初始化函數;
<body onload='init()'>
不在這裏好,因爲到了init()我需要參考在JSP中創建了一些對象... 感謝所有幫助
在瀏覽器中觀察生成的HTML頁面的源代碼,並檢查JS文件是否正確包含在您的頁面中(正常的瀏覽器如Chrome或Firefox會使您的' 'now now both test()和警報(測試)沒有返回任何東西... – Jonaev
好吧,我已經改變了pathToScript和url變量,現在它似乎工作,但只在IE中你知道該怎麼做才能在其他瀏覽器上工作嗎?有問題,因爲我通常在linux工作 – Jonaev
我也不是一個很大的IE粉絲,但它適用於IE,Chrome和FireFox。我還沒有在Safari中進行過測試,但所有的意圖和目的都應該起作用。雖然說,你可能需要清除緩存(我知道,舊的關機和重新啓動註釋),看看是否有幫助你。如果有任何改變,然後pos sibile,jQuery(document.body).append改爲... – Amd4632