escape不编码字符有69个:*,+,-,.,/,@,_,0-9,a-z,A-Z
encodeURI不编码字符有82个:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z
encodeURIComponent不编码字符有71个:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z
JS: encodeURIComponent :
传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断。 同时避免中文乱码
例如:<script language="javascript">document.write('<a href="http://passport.baidu.com/?logout&aid=7&
u='+encodeURIComponent("http://cang.baidu.com/bruce42")+'">退出</a& gt;');</script>
解码使用decodeURIComponent()
C#:相应的加码和解码
[HttpContext.Current.]Server.UrlDecode
[HttpContext.Current.]Server.UrlEncode