2016-02-15 192 views
1

我通過瀏覽器自動替換爲「+」或「%20」來傳遞變量真正的url和空格。重定向頁面之後,我想正確拆分這個詞。用空格替換特殊字符

例如: - http://localhost:8008/Login.aspx?stid=Are你快樂

後負荷登錄頁面這個自動轉換,

http://localhost:8008/Login.aspx?stid=Are+You+Happy

http://localhost:8008/Login.aspx?stid=Are%20You%20Happy

如何加載後得到這個STID變量該頁面,

你快樂嗎

有沒有辦法做到這一點使用JavaScript或jQuery?

,我想同樣的結果,當我把我的參數,

http://localhost:8008/Login.aspx?stid=Are+You+Happy

我想,還要以下的結果。

爲+你+快樂

可這兩個功能的JavaScript或jQuery的呢?

回答

2

這應該做的伎倆

var url = "http://localhost:8008/Login.aspx?stid=Are%20You%20Happy", 
 
    decoded_url = decodeURIComponent(url.replace(/\+/g, " ")); 
 
    
 
alert(decoded_url.split('stid=')[1]);

+0

jQuery真的需要這個嗎? – SlashmanX

+0

不,完全沒有。我從代碼片段中刪除了jquery。 – Timo

4
//decode function 
function decode(encodedStr) { 
    return decodeURIComponent(encodedStr.replace(/\+/g, " ")); 
} 

//encode function 
function encode(unencoded) { 
    return encodeURIComponent(unencoded).replace(/'/g,"%27").replace(/"/g,"%22"); 
} 


您還可以使用 JQuery.params()

var myObject = { 
    stid: 'You are happy', 
    b: [ 1, 2, 3 ], 
    ....... 
}; 
var recursiveEncoded = $.param(myObject); 
var recursiveDecoded = decodeURIComponent($.param(myObject)); 

alert(recursiveEncoded); 
alert(recursiveDecoded);