2017-02-01 96 views
2

我想在html頁面上動態添加路由到腳本src。 例如,動態添加路由到腳本src在html頁面

<script src="../../../library/vendor/jquery/jquery-3.1.1.min.js"></script> 

當我使用的Web服務器,並加載這個代碼,而不是工作。也許它應該把Web服務器的URL前綴。所以我想改變下面。

<script src="mySite/../../../library/vendor/jquery/jquery-3.1.1.min.js"></script> 

或者 其他東西那根相對路徑設置?

回答

2

這不能通過html或javascript來實現。您至少需要一個能夠在將html發送到瀏覽器並替換「mySite」之前「呈現」html的框架。

例在JSF 2.x中它應該是這樣的:

<link href="#{request.contextPath}/css/style.css" rel="stylesheet" type="text/css"/> 

或者Thymeleaf:

<a th:href="@{/order/list}"> 

如果你想開發例如一個頁面的網站,其中內容被替換動態的由ajax,那麼你至少需要一個由這個框架之一動態創建的頁面。

1

使用下面的JavaScript代碼:通過將其作爲一個參數

function addMyScript(url) { 
    var scr = document.createElement('script'); 
    scr.setAttribute('src', url); 
    document.head.appendChild(src); 
} 

您可以動態決定您的網址,並調用該函數::

var scr = document.createElement('script'); 
    var myurl = 'http://example.com/myjavascript.js' 
    scr.setAttribute('src',myurl); 

    document.head.appendChild(scr); 

,或者你可以創建這樣的功能

addMyScript('http://example.com/myjavascript.js'); 
+0

哦,我沒有想到這一點。好的,你必須從你渲染的第一個html開頭的某個地方獲得「myUrl」。 – Brain