视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Ajax提交参数的值中带有html标签不能提交成功的解决办法
2020-11-27 19:47:46 责编:小采
文档


这篇文章主要介绍了Ajax提交参数的值中带有html标签不能提交成功的解决办法,非常不错,具有参考借鉴价值,需要的朋友参考下

最近在公司做资源及文章上传功能遇到一个小问题。

该功能就类似利用富文本编辑器发布信息,但是用Ajax提交数据,因此提交参数值中不可避免的含有html标签。

在本地运行代码一直没问题,总是可以提交成功,但是代码部署到线上就不能成功提交数据了,被坑了好久,找了好半天才找到问题所在。

提交不成功的原因是因为我的提交数据中含有html标签,然后直接无法请求到我的目标地址。

然后解决办法如下:

1、在页面用JS的Base编码(类似加密)带有html标签的参数值。

2、在目标地址获取到数据后,利用后台Base解码方法对获取到的数据进行解码即可。

以下是我的JS的Base编码和解码方法代码:

页面调用JS方法进行Base编码代码如下:

但是呢,又遇到一个新的问题,用JS对数据进行Base编码后,JS居然把加号(+)替换成了空格,造成我后台方法解码出来的数据不正确。

解决办法如下:

本人首先采用JS方法replace()方法进行替换,但是有错误,JS只是把我的第一个空格替换成了加号(+),最后解决办法如下。

在后台(目标接受地址下)对获取到的数据,把空格替换成加号(+)。代码如下:

如果后台的Base编码和解码方法不会的请看下面:

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

Ajax post请求跳转页面

Ajax提交表单页面刷新很快的解决方法

Ajax打开新窗口被浏览器拦截的两种解决办法

下载本文
显示全文
专题