2010-01-07 159 views
2

我已經搜索了這個網頁尋找答案,但似乎這次我不那麼幸運,所以我不得不問。我很抱歉,如果它已經回答(找不到它)。是的,英語不是我的第一語言,所以我也爲我的拼寫錯誤表示歉意,我盡我所能。JavaScript SRC路徑不能正常工作

這是我的問題,使用Tomcat 5.5,Struts 1.3,JRE 1.5和我使用的是Firefox 3.5.6。 在我的jsp頁面中,我似乎無法把src="path/path"放入我的<script>我試過刪除src並且一切正常,但我的項目需要大量的jQuery使用,而且我不想複製/粘貼所有的js文件在每個jsp中。

這是我的代碼:

<script type="text/javascript" src="js/jquery-1.3.2.js"> 
    function showMySelf(){ 
     alert("Hello World!");  
    } 
(... plus other stuff code that actually uses jquery functions) 
</script> 

,並提交按鈕:

<input type="submit" onclick="showMySelf()"> 

當我按一下按鈕,沒有任何反應(以及它實際上重繪頁),當我刪除了「 src「標記並將所有jquery代碼添加到頁面中,這一切都很好。

我曾嘗試在路徑中添加另一個斜槓作爲「/js/jquery-1.3.2.js」並返回一個錯誤。

我試過使用ResolveURL,它似乎沒有給我更好的結果。

我也嘗試將js文件更改爲另一個文件(「generics.js」和「js.js」),我也嘗試使用「js/*。js」。

任何這些解決方案都存檔任何東西。

我也試過使用struts標籤(如html:submit),但它也沒有工作。

該路徑實際上是正確的,因爲在我的Web瀏覽器中查看代碼給了我一個鏈接到js文件。所以我suposse瀏覽器知道要查找我的js文件,它不會給我一個錯誤或一個斷開的鏈接到文件。

爲什麼會發生這種情況的任何想法?

謝謝大家。

隨機。

回答

5

您不能使用script元素加載外部文件,並在同一時間將代碼放在其中。您需要使用兩個script元素:

<script type="text/javascript" src="js/jquery-1.3.2.js"></script> 
<script type="text/javascript"> 
    function showMySelf(){ 
     alert("Hello World!");  
    } 
(... plus other stuff code that actually uses jquery functions) 
</script> 
+0

先生,發現+1。 – 2010-01-07 12:27:38

+0

這工作。謝謝! 我早些時候嘗試過這個解決方案,但是我用/>而不是> Random 2010-01-07 12:43:09

2

我想Gumbo解決了它。

作爲一個旁註,查找瀏覽器是否可以加載JS文件的一個非常好的方法是Firefox中Firebug的「Net標籤」。它顯示全部當前頁面的加載(和失敗)請求。

1

兩個最可能的選項是:

a)您是包括HTML在您的JS文件(即<script>標籤)

把它拿出來。

b)你有錯誤的URI,當你試圖解決您的相對URI手動你在你的服務器訪問日誌,這樣做不正確

看看,看看實際上正在請求什麼(或使用工具(如Firebug) )