2013-06-20 116 views
2

我有一個擁有兩種語言內容的網站,它們都具有相同的文件名,但存儲在不同的文件夾中:/ EN /和/ ZH /。用文本鏈接更改URL的文件夾名稱?

我想要一個文本鏈接,它允許點擊並更改URL的文件夾名稱。

喜歡通過點擊文字鏈接 「ZH」,它將改變網址爲:

從=> 「http://example.com/GroupA/EN/index.asp

到=> /ZH/index.asp」

我有四處搜尋,發現腳本如下:

腳本:

$(function() { 
    $(".flag").click(function(e) { 
     e.preventDefault(); 
     var to = $(this).attr("href").substring(1); //removes the hash value # (#en will become 'en') 
     var from = jQuery.url.segment(-2); 
     var url = from.replace('/' + from + '/', '/' + to + '/'); 
     document.location = url; 
    }); 
}); 

正文:

<a id="flags" href="#en" class="flag">English</a> 

然而,當我試着上面的腳本,它只會增加「#en」我的網址的結尾,像 http://example.com/GroupA/EN/index.asp#en

+0

你肯定jQuery庫包含在你的網頁?該腳本未運行,並且鏈接的行爲與正常情況下單擊一樣,但未應用腳本。檢查瀏覽器的控制檯是否有錯誤,並告訴我們是否有任何錯誤。如果您不知道如何查看控制檯,請告訴我您使用的瀏覽器。 –

+0

我正在使用IE8,謝謝。 – Galia

+0

使用IE你需要開發者的工具包,你可以從MS獲得免費的工具包。按下F12,看看是否有新的窗口打開 - 控制檯在那裏。能夠看到JS產生的任何錯誤總是很好的。 –

回答

1
$(function() { 
    $(".flag").click(function(e) { 
     e.preventDefault(); 
     var to = $(this).attr("href").substring(1); //removes the hash value # (#en will become 'en') 
     var url = window.location.hostname + "/GroupA/"+to.toUpperCase()+"/index.asp" 
     window.location.assign(url); 
    }); 
}); 
+0

我也使用它來調用腳本嗎? English;它是一樣的,只在當前URL的末尾添加#en。 – Galia