2014-09-12 37 views
6

讀我需要通過在URL中的一些參數,這些參數可以有特殊字符,如」西班牙N或N,:空間和口音特殊字符進行編碼在URL傳遞和JavaScript的

什麼propper ?增加了URL或在情況下,我在那樣的HTML了之前的方式來對其進行編碼,讀他們

我嘗試這樣做:

arrayData[i] = pair[1].replace('+', " ").replace('%22', "\""); 

但剛剛獲得與+或空格,工作不能同時同時或兩行:

arrayData[i] = pair[1].replace('+', " "); 
    arrayData[i] = pair[i].replace('%22', "\""); 
+0

不完全重複 - 僅用於編碼非字母字符,這是常見的情況。在這裏,他需要編碼字母但非英文/非標準字母字符。 – mechalynx 2014-09-12 11:45:50

+0

是的,抱歉,癢的觸發手指。 – Andy 2014-09-12 11:55:58

回答

6

您可以嘗試是encodeURI內置功能,例如

encodeURI('coño funcionó!') 
+0

這個。但要小心閱讀[encodeURI](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/encodeURI)及其兄弟[encodeURIComponent](https:// developer。)。 mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent)。 – mechalynx 2014-09-12 11:47:30

+0

我必須把這個放在哪裏?我想要在android和ios應用程序中使用html。所以我必須在添加它們之前對參數進行編碼,不是嗎? – Biribu 2014-09-12 11:48:43

+0

使用參數獲取所有網址比較容易,然後在發送之前對其進行編碼。 – Balder 2014-09-12 11:51:55

1

以前的答案是正確的。 JavaScript內置了用於完成這類任務的函數。

您可以嘗試在w3schools.com中調查這些功能。以下是基本信息的鏈接和生活的「實戰」的特點:

  • encodeURI - 需要字符串的字符,並把它編碼到合理的URL風格(編碼空間和非ANSII字符)
  • decodeURI - 需要編碼的字符串並將其解碼爲初始狀態