更改部分网址文字并重新加载页面

时间:2014-11-09 16:19:00

标签: javascript php html5

有没有办法制作一个包含当前网址部分的标记链接?

我会用它来改变语言但留在当前页面上!

如果我在:

www.mysite.com/contact

我按下:

<a>FR</a>

生成的链接将是:

www.mystie.com/fr/contact

亲切的问候

2 个答案:

答案 0 :(得分:0)

你可以试试像

function changeLng(lang) {

  // remove language '/fr/' or '/es/' if exists
  var path = window.location.pathname.replace(/\/[a-z]{2}/, '');
  // reload the page same url with the lang prefix
  window.location.href = '/' + lang + path;
}

链接可以是

<a href="javascript:changeLng('fr');">FR</a>
<a href="javascript:changeLng('es');">ES</a>
<a href="javascript:changeLng('en');">EN</a>

将任何网址转换为lang特定的示例

  • /contact/fr/contact
  • /about/fr/about

更新

删除lang部分很简单

function removeLng() {
  // remove language
  var path = window.location.pathname.replace(/\/[a-z]{2}/, '');
  window.location.href = path;
}

答案 1 :(得分:0)

试试这个:

HTML:

<a href="fr/contact" id="myLink">FR</a>

现在从javascript获取网址

$("#myLink").click(function(e){

    e.preventDefault();         
    var url = document.url;                         // get current page url
    url = url.substr(0, url.indexOf('/'));          // get substring from url
    url += "/" + $(this).attr("href");              // add href of a tag to url 
    window.location.href = url;                     // locate the page to url

});