欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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表示全局匹配并忽略大小写)

 

2java提供了对文字进行编码的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");