首先,我发送了一个完整的json对象,里面充满了数据。下面只是一个没有正确转换的字符串数据的例子。
从这个字符串开始:
"Verticale dall'alto verso il basso, Verticale dal basso verso l'alto"当使用jquery ajax (json)发送它时,它会变成这样:
"Verticale dall\'alto verso il basso, Verticale dal basso verso l\'alto"这是发送代码:
$.ajax({
url: ajax_url
,type: 'post'
,dataType:'JSON'
,data: data显然,我不想得到转义的单引号。在我的数据库中,我想写"'",而不是"\'“。
怎么做?
发布于 2020-04-28 01:55:43
您可以聪明地使用.replace所有引号来撇号
var str = "she's good";
var res = str.replace(/'/g, "’");或
你可以试试var json = encodeURIComponent(string)
发布于 2020-04-28 15:29:34
感谢@Jintor,解决方案如下:
url: ajax_url
,type: 'post'
,dataType:'JSON'
,data: JSON.parse(JSON.stringify(data).replace(/'/g, "’"))在我的程序中,数据是以纯json格式从其他来源传给我的,然后我必须向其中添加一些其他字段,最后将其传递给$.ajax。此时,我要做的是将原始对象串化,替换所有直引号,然后再次将其解析为JSON,并将其传递给ajax。
也许我也应该注意双引号,但不管怎样,这是我目前的解决方案。
https://stackoverflow.com/questions/61464935
复制相似问题