2012-08-27 63 views
12

可能重複:
jQuery/Javascript replace <space> in anchor link with %20我怎麼能代替%20空間在JavaScript

我越來越S-參數是這樣的:

sParameter = document.getElementById('ddParameterType').value;

如果我獲得像"Test - Text"這樣的字作爲ddParameterType項目
那麼我更換空間的字象下面這樣:

sParameter = document.getElementById('ddParameterType').value.replace("","%20");

但其返回像%20Test - Text一個瓦魯爾足球俱樂部。
我需要像Test%20-%20Text

任何人都可以幫忙。

+0

有是encodeURI:http://stackoverflow.com/a/853872/14955 – Thilo

+0

我很抱歉,我無法理解你的需求對用戶數據進行編碼。任何人都可以幫我理解這個原因嗎? – shahkalpesh

回答

39
sParameter = encodeURIComponent(sParameter.trim()) //"Test%20-%20Text" 

.trim會從字符串中刪除開頭和結尾的空白。 encodeURIComponent將對其進行網址編碼。

+0

感謝您的回答 – SDLBeginner

+0

此解決方案適用於IE和其他瀏覽器。謝謝 –

1

使用以下,而不是更換所有出現:

​​

或者更好yet

encodeURIComponent(document.getElementById('ddParameterType').value); 
6
sParameter = encodeURIComponent(sParameter.trim()) 
+0

請注意,這不僅僅是空格... https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent但這可能是一件好事。 – phyatt