Javascript URL中参数包含特殊字符的处理
程序员文章站
2022-07-07 13:12:48
...
有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了,例如%指定特殊字符,编码为%25、 #表示书签,编码为%23、 &表示参数间的分隔符,编码为%26,由两种方法解决:
(1)可以用replace方法替换成编码
data2=data2.replace(/\%/g,"%25");
data2=data2.replace(/\#/g,"%23");
data2=data2.replace(/\&/g,"%26");
(g表示全局匹配,即替换掉字符中所有的空格和换行,i表示忽略大小写,gi表示全局匹配并忽略大小写)
(2)java提供了对文字进行编码的3个函数:
escape
encodeURI
encodeURIComponent
主要用法有:
传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断,例如:url:'ViewBillers?outdata='+encodeURIComponent(outdata1),
进行url跳转时可以整体使用encodeURI
例如:Location.href=encodeURI("http://cang.baidu.com/do/s?word=百度&ct=21");
上一篇: windows定时运行R脚本