js发送post请求时候遇到&特殊字符转义报错解决方案

js发送post请求时候遇到&特殊字符转义报错解决方案, 在post给服务端时候有些格式需要前端手动拼接数据如:xxx&xxx,但是当遇到&字符就报错了。

可以利用转义思路去解决,如 & 转成 %26


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


一、替换成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");//"#"


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


代码如下:

console.log(encodeURIComponent("&"));//转码,得到结果就OK了吧,下边是解码,这里是用不到的
console.log(decodeURIComponent(encodeURIComponent("#")));


以上就是js发送post请求时候遇到&特殊字符转义报错解决方案全部内容,感谢大家支持自学php网。

返回顶部
跳到底部

Copyright 2011-2024 南京追名网络科技有限公司 苏ICP备2023031119号-6 乌徒帮 All Rights Reserved Powered by Z-BlogPHP Theme By open开发

请先 登录 再评论,若不是会员请先 注册