2013-06-20 2 views
2

두 언어로 된 콘텐츠가있는 사이트는 모두 동일한 파일 이름을 가지지 만/EN/및/ZH /는 다른 폴더에 저장됩니다.URL의 폴더 이름을 텍스트 링크로 변경 하시겠습니까?

나는 그것을 클릭하고 URL의 폴더 이름을 변경할 수있는 텍스트 링크가 필요합니다. 텍스트 링크 "ZH"를 클릭하여이 같은 URL이 변경됩니다 같은

:에서

을 => => /ZH/index.asp "

I에"http://example.com/GroupA/EN/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> 

그러나, 그것은 단지 당신에게 jQuery 라이브러리가 포함되어 확실 http://example.com/GroupA/EN/index.asp#en

+0

처럼, 내 URL의 끝에 "#en"를 추가 귀하의 페이지에 있습니까? 스크립트가 실행되지 않고 스크립트가 적용되지 않은 상태에서 정상적으로 클릭 된 것처럼 링크가 작동합니다. 브라우저의 콘솔에서 오류가 있는지 확인하고 오류가 있으면 알려주십시오. 콘솔을 보는 방법을 모른다면 사용하는 브라우저를 알려주십시오. –

+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이 나오고 현재 URL 끝에 #en을 추가하십시오. – Galia

관련 문제