首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何避免jquery ajax将单引号转换为转义引号?

如何避免jquery ajax将单引号转换为转义引号?
EN

Stack Overflow用户
提问于 2020-04-28 01:38:44
回答 2查看 58关注 0票数 0

首先,我发送了一个完整的json对象,里面充满了数据。下面只是一个没有正确转换的字符串数据的例子。

从这个字符串开始:

代码语言:javascript
复制
"Verticale dall'alto verso il basso, Verticale dal basso verso l'alto"

当使用jquery ajax (json)发送它时,它会变成这样:

代码语言:javascript
复制
"Verticale dall\'alto verso il basso, Verticale dal basso verso l\'alto"

这是发送代码:

代码语言:javascript
复制
  $.ajax({
    url: ajax_url
    ,type: 'post'
    ,dataType:'JSON'
    ,data: data

显然,我不想得到转义的单引号。在我的数据库中,我想写"'",而不是"\'“。

怎么做?

EN

回答 2

Stack Overflow用户

发布于 2020-04-28 01:55:43

您可以聪明地使用.replace所有引号来撇号

代码语言:javascript
复制
var str = "she's good";
var res = str.replace(/'/g, "’");

你可以试试var json = encodeURIComponent(string)

票数 1
EN

Stack Overflow用户

发布于 2020-04-28 15:29:34

感谢@Jintor,解决方案如下:

代码语言:javascript
复制
url: ajax_url
,type: 'post'
,dataType:'JSON'
,data: JSON.parse(JSON.stringify(data).replace(/'/g, "’"))

在我的程序中,数据是以纯json格式从其他来源传给我的,然后我必须向其中添加一些其他字段,最后将其传递给$.ajax。此时,我要做的是将原始对象串化,替换所有直引号,然后再次将其解析为JSON,并将其传递给ajax。

也许我也应该注意双引号,但不管怎样,这是我目前的解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61464935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档