2012-08-31 7 views
1

현재 페이지에 "?"가 포함되어 있는지 감지하는 자바 스크립트를 작성하려고합니다. url에서, 그리고 만약 그렇다면, url의 모든 것을 "?" 이 새 URL로 창을 다시로드하십시오. 나는 이것을 시도했다 :현재 URL을 수정하는 자바 스크립트?

var curr_url = window.location.toString(); 
if (curr_url.indexOf('?')!== -1){ 
    var goodpart = curr_url.split('?'); 
    //alert(goodpart[0]); 
    window.location = goodpart[0]; 
} 

그러나 그것은 작동하지 않는다. 어떤 페이지에서는 아무것도하지 않거나 작동하지만 페이지를 계속해서 다시로드합니다.

+0

이 작동합니다, 모든 URL-재 작성 서버 측에서 활성화가 있습니까? –

+0

Dr.Molle과 동의하십시오. 메타 태그가 있습니까? 에이 잭? 페이지를 다시로드한다는 것은 무엇을 의미합니까? 어떻게 이것을 구현하고 있습니까? 사이트 예? – vol7ron

+0

window.location을 변경하면 브라우저가 해당 페이지를로드하기 때문에 페이지를 다시로드하는 이유가 있습니다. 당신은 무한 루프에 빠져들고 있습니다. –

답변

1
if (location.search) 
{ 
    location.href = location.protocol + "//" + location.host + location.pathname; 
} 

모든 URL을 빼고 현재 URL을 다시로드해야합니다.

+0

프로토콜과 호스트는 현재 프로토콜과 호스트로 기본 설정되어 있으므로 프로토콜과 호스트가 필요하지 않습니다. – Neil

0
document.location.href=goodpart[0]; 
0
var new_url  = (window.location+'').replace(/\?.*/,''); 
window.location = new_url; 
관련 문제