两种方法解决javascript url post 特殊字符转义 + & #_jquery

原创
2016-05-16 15:05:442224浏览

最近在用url 传特殊字符的时候发现数据丢失了。

其实不是丢失,比如 ‘+'它会当成连接字符来处理了。

一、替换成16进制字符,在这列几个常用的转换

+ 空格 / ? % & = #
%2B %20 %2F %3F %25 %26 &3D %23

复制代码 代码如下:
var post_Str = apply_name.replace(/\+/g, "%2B");//"+"转义
var post_Str= post_Str.replace(/\&/g, "%26");//"&"
var post_Str= post_Str.replace(/\#/g, "%23");//"//m.sbmmt.com/m/article/#"

二、如果遇到了其他的特殊字符,可以用下面的方法看一下把它转成啥,直接按照上面的方法写一个就行了

复制代码 代码如下:
alert(encodeURIComponent("-"));//转码,得到结果就OK了吧,下边是解码,这里是用不到的
alert(decodeURIComponent(encodeURIComponent("//m.sbmmt.com/m/article/#")));

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。