javascript
  • jquery
  • append
  • 2012-10-23 35 views 0 likes 
    0

    可能重複:
    Change URL parameters with jQuery?JS:追加變量,而不必重複到URL

    目前,我有一個<div>標籤,看起來像一個按鈕,並用一個onClick功能改變URL這重定向到同一頁面只需在URL中添加&view_all=Yes&view_all=No

    <div onclick="javascript:window.location.href = 'page.php?action=list-volunteer-apps&view-all=No';">Hide Closed Applications</div>

    好吧,我加入了一項新功能的網站,我需要能夠追加該&view_all=Yes&view_all=No到URL的末尾,而不是重定向他們,因爲我會在其他變量我不能失去的URL。

    我已經想出了一個辦法來做追加,但它不斷增加&view_all變量到URL的末尾,所以它看起來像這樣page.php?action=list-volunteer-apps&view-all=No&view_all=Yes&view_all=No

    這是我做的追加方式: onclick="javascript:window.location.assign(window.location.href+='&view-all=No');"

    +0

    你嘗試搜索?可以找到答案[here](http://stackoverflow.com/q/1090948/944681) –

    +2

    用純JS檢查[這個答案](http://stackoverflow.com/questions/9048360/how-to-extract -relative-url-from-argument-values-from-request-string/9048444#9048444)too –

    +0

    是的,當然我搜索過。剛使用了錯誤的搜索查詢。謝謝。 – Draven

    回答

    0

    您可以使用正則表達式替換字符串值:

    $(this).attr("onclick", function(i, val) { 
        return val.replace(/view-all=(Yes|No)/, function() { 
         return "view-all=" + ((arguments[1] || "") == "Yes" ? "No" : "Yes"); 
        }); 
    }); 
    
    +0

    你能告訴我如何使用它嗎? – Draven

    +0

    @Draven例如,像這樣:http://jsfiddle.net/mx7s8/。 – VisioN

    +0

    好吧,看起來好主意,但我不知道足夠的JS來讓它工作。 – Draven

    相關問題