2014-09-12 61 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 - 需要编码的字符串并将其解码为初始状态