2013-03-30 54 views
3

在我default.jspx它包含了我想進口一些jQuery的庫如下<script>標籤不正常關閉

<head> 
    ... 
    <spring:url value="/resources/js/lib/jquery-1.9.1.min.js" var="jquery_url" /> 
    <spring:url value="/resources/js/lib/jquery.tokeninput.js" var="jquery_tokeninput_url" /> 
    <script src="${jquery_url}" type="text/javascript"></script>  
    <script src="${jquery_tokeninput_url}" type="text/javascript"></script> 
    <script type="text/javascript"> 
     $.noConflict(); 
    </script> 
    <util:load-scripts /> 
    ... 
</head> 

但頁面的基本佈局,當頁面在瀏覽器中呈現的第一個腳本標籤吞下兩個人

<head> 
... 
<script type="text/javascript" src="/roo-inari/resources/js/lib/jquery-1.9.1.min.js"> 
//These lines are inside the first script tag 
<script type="text/javascript" src="/roo-inari/resources/js/lib/jquery.tokeninput.js"/> 
<script type="text/javascript"> 
     $.noConflict(); 
//The tag is closed here 
</script> 
<link href="/roo-inari/resources/dijit/themes/tundra/tundra.css" type="text/css" rel="stylesheet"> 
... 

任何想法可能會導致什麼呢?該項目是基於春天生成的網絡mvc腳手架。 我正在使用Chrome v.25。

+0

我不知道春天,但如果你的JSP源對被解析的服務器變量的兩行結束'',有看似是一些原因,春天什麼服務器輸出的是。如果你沒有從*真實頁面源*拷貝(右鍵單擊,查看源代碼),然後顯示。 –

+1

+1我不知道爲什麼downvotes。我不知道[tag:spring-mvc],但這看起來很奇怪,HTML最終會像這樣,因爲腳本標籤看起來很好,並且在頁面中看起來很好,假設'src'是[tag :彈簧-MVC]。 – Nope

+0

+1我不知道爲什麼downvotes(請解釋,如果你這樣做),我跑過這個完全相同的問題,這完全描述它。 –

回答

5

簡單的解決方案是在標籤內寫入註釋,以便它不會自動關閉。我傻

<script src="${jquery_url}" type="text/javascript"><!-- required for some browsers --></script> 
+2

+1,因爲這聽起來像是具有類似問題的未來用戶可能會覺得有用。只要SO讓你,也將這個答案標記爲已接受。 – Nope

+0

對此的解釋是解析器在元素內部沒有任何內容時會吞下結束標記。正如@Pyhtos所建議的那樣,在空腳本標記內部添加一個表示可以解決問題。我在一年前遇到過這個問題,我相信這個解釋與XHTML有關。 – CodeChimp