2012-08-31 60 views
1

我想寫一個JavaScript,檢測當前頁面是否包含「?」在網址中,如果是這樣,請將網址中的所有內容都設置爲「?」然後用這個新的url重新加載窗口。我試過這個:Javascript修改當前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,你有沒有meta標籤? AJAX?你是什​​麼意思,它不斷重新加載頁面?你如何實施這個?示例網站? – vol7ron

+0

它不斷重新加載頁面的原因是,當您更改window.location時,瀏覽器將會去並加載該頁面。你一直陷入無限循環。 –

回答

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

這應該重新加載到當前URL減去任何查詢字符串。

+0

您不需要協議和主機,因爲它們默認會使用當前的協議和主機。 – Neil

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