当前位置: 首页 > 面试题库 >

jQuery $ .post和json_encode返回带有引号的字符串

刘令
2023-03-14
问题内容

我正在使用jQuery的$ .post调用,它返回的字符串带有引号。引号由json_encode行添加。如何停止添加引号?我的$
.post通话中是否缺少某些内容?

$.post("getSale.php", function(data) {
    console.log('data = '+data); // is showing the data with double quotes
}, 'json');

问题答案:

json_encode()返回一个字符串。从json_encode()文档中:

Returns a string containing the JSON representation of value.

你需要调用JSON.parse()data,这将解析JSON字符串,并把它变成一个对象:

$.post("getSale.php", function(data) {
    data = JSON.parse(data);
    console.log('data = '+data); // is showing the data with double quotes
}, 'json');

但是,由于在调用中将字符串连接data =到,将记录的是,它将返回对象的字符串表示形式。因此,您将要登录一个单独的呼叫。像这样:data``console.log()``data.toString()``[object Object]``data``console.log()

$.post("getSale.php", function(data) {
    data = JSON.parse(data);
    console.log('data = '); // is showing the data with double quotes
    console.log(data);
}, 'json');


 类似资料:
  • 问题内容: 我有这个: JSONLint表示这是完全有效的json。但是执行时出现错误。 但是,如果我将代码更改为: (请注意双反斜杠) 它可以工作,但是现在JSONLint表示。 有人可以帮助您了解这种行为吗? 问题答案: 有线格式和您必须在代码中编写的格式之间是有区别的。当您在代码中声明此代码时,您需要在文字中使用双-\,以便字符串获得一个反斜杠(否则,它将\\解释为一个转义序列,仅声明一个“

  • 所以我得到了一个xml文件从肥皂服务(我无法控制)。它返回了一个xmlns,这导致了简单的XML问题。我正在运行一个str_replace来解决这个问题,但是现在simpleXML只返回一个空对象。XML结构看起来很好,没有错误,只是一个空对象。 返回:SimpleXMLElement对象() str replace之前的XML源是: 更换后: 任何帮助都将不胜感激,这快把我逼疯了! ----因此

  • 问题内容: 我有一个带有3个嵌套数组的简单php结构。 我不使用特定的对象,而是使用2个嵌套循环构建数组。 这是我要转换为Json的数组的var_dump的示例。 在另一个脚本中,我具有类似的结构并且工作正常。所以我不明白为什么在这里不起作用。 编辑:似乎有编码问题。当返回ASCII,该作品但当它返回UTF8,它不工作了。 Edit2:返回表示:格式错误的UTF-8字符,可能编码不正确。 问题答案

  • 问题内容: 我一直在努力解决一个小问题。它已经存在了很多年,但这只是一个令人烦恼的问题,而不是一个严重的问题,我已经解决了这个问题。但是现在我想找出是否有人可以帮助我。我做了一些谷歌搜索,但没有成功。 如果我从php文件中的html textarea进行表单发布,如下所示: 当然还有一个提交按钮,依此类推。 值是问题所在:textarea的值同时具有“(引号)和’(撇号)。 要将其保存在mysql

  • 问题内容: 由于某种原因,“描述”项将返回以下代码: 这是我的数据库的架构: 这是页面上呼应的内容: 有任何想法吗? 问题答案: 我敢打赌,您正在以非utf8编码检索数据:请尝试在查询之前输入。

  • 我想打印如下内容: abc、def、ghi、JKL、mno、pqr 我刚写的时候: 所以我试着: 这给了我: abc、def、ghi、jkl、mno、pqr