ajax中post方法传参数,会丢失&,%,+',要转义

来源:互联网 发布:图形旋转矩阵 编辑:程序博客网 时间:2024/06/05 08:09

ajax中post的escape对有些特殊字符无法转换,例如:+ % &号,因此需要对其进行转义。

如果不然,Http传输就会丢失这个字符,这个时候必须将“+”手动转成 “%2B”,同时需要手动转的字符还有“&”->“%26”,“%”->“%25”等。

if (password != null && password != "")    {        password=password.replace(/\+/g, "%2B");        password=password.replace(/&/g, "%26");    }    if (username != null && username != "")    {        username=username.replace(/\+/g, "%2B");        username=username.replace(/\&/g, "%26");            }注:+ 是正则表达式的元字符,需要用 \ 转义;& 可以不用转义。

或者对特殊字符串进行转码
encodeURIComponent(yj)