2014-12-05 120 views
2

我有一個HTML鏈接引用類似:的JavaScript動態URL內容

click here<a href="http://www.example.com/usr/page.aspx?pgid=1">www.example.com</a> 

現在我想添加JavaScript代碼,使www.example.com網址是動態的。所以它會始終檢索作爲

<a href="[DYNAMIC URL]/usr/page.aspx?pgid=1">www.example.com</a> 

任何人都可以請指教?TQ

+0

不要你有後端?你的條件是什麼動態的手段? – 2014-12-05 09:22:53

+1

那是你想要的嗎?'www.example.com'?將由瀏覽器使用當前主機名,協議,端口進行解釋。 – dfsq 2014-12-05 09:28:12

+0

@dfsq是的,我想讓腳本從用戶訪問的URL中獲取任何域。意思是如果用戶訪問site1.com。它會去「site1.com/usr/page.aspx?pgid=1」 – Ren 2014-12-05 09:31:33

回答

0

使用JavaScript獲得域名,並添加它來創建你需要的鏈接。

var domain = document.domain; 
var link = '<a href=\"'+domain+'/usr/page.aspx?pgid=1\">www.example.com</a>'; 
link // here you get a anchor tag html. 

從可能子域集sub1.example.com sub2.example.com sub3.example.com中獲取域名example.com。你可以嘗試下面的代碼。

var parts = location.hostname.split('.'); 
var subDomain = parts.shift(); 
var upperLevelDomain = parts.join('.'); 

To get only the second-level-domain, you might use 

var secondLevelDomain = parts.slice(-2).join('.'); 
0

href屬性可以是相對路徑:

<a href="/path/to/page">Blah</a> 

鏈路會抓住當前協議,主機和端口和追加下一無論發生什麼。

示例場景:讓我們假裝當前網址爲http://yoursite.com/pages/links.html上面的示例錨會在點擊http://yoursite.com/path/to/page時導航。

注:如果省略了斜線的相對路徑

<a href="path/to/page">Blah</a> 

目前完整路徑將被使用。

示例場景:讓我們pretende當前的URL是http://yoursite.com/pages/links.html再沒有領先斜線當點擊到http://yoursite.com/pages/path/to/page

將導航錨:相對相對於當前頁

1

這是你在找什麼? Check JSFiddle Demo

HTML

<a class="dyna" href="[DYN]/usr/page.aspx?pgid=1">www.example.com</a><br/> 
<a class="dyna" href="[DYN]/usr/page.aspx?pgid=1">www.site.com</a><br/> 
<a class="dyna" href="[DYN]/usr/page.aspx?pgid=1">www.bla.com</a><br/> 

JS

var l = document.getElementsByClassName("dyna").length; 

for (var i=0; l > 0; l--){ 
    var inner = document.getElementsByClassName("dyna")[i].innerHTML, 
     x = document.getElementsByClassName("dyna")[i].getAttribute('href'), 
     y = x.replace('[DYN]','http://'+inner); 

    document.getElementsByClassName("dyna")[i].setAttribute('href',y); 

    i++ 
} 

注:我用一個類來檢索錨,但你可以看看標記名,如果你喜歡...