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

将AJAX返回数据转换为JSON

娄德运
2023-03-14
问题内容

我正在尝试检索JSON对象(我已验证的文件格式正确)中的数据,并将数据输出到firebug控制台中。我使用JSONLint(http://jsonlint.com/)验证了JSON,并且知道数据没有在JSON对象中返回,因为当我记录它时,它是以文本而不是对象的形式记录的。当我查看ajax帖子时,有一个JSON选项卡,其中显示了该对象,出于某种原因,我只是无法检索它。

我的ajax电话是

    $.ajax({
        url:'/coords/base',
        data: { type: obj.type, id: obj.id },
        dataType:'text',
        type:'get',
        async:false,
        success: function(data) {
            console.log(data);
        }
    });

我的返回数据如下所示:

    {   
        "1": {"name":"TEXT","coords":[        
            { "entry":3,"x":15,"y":15 }     
        ]}}

当我将AJAX调用设置为变量并添加.responseText时;到调用结束,我可以检索AJAX调用的纯文本返回。我以为我可以再使用$
.serialize()或$ .parseJSON(),但随后出现错误“未捕获的异常:语法错误,无法识别的表达式”。

最终目标是从此responseText检索内容,并在整个文件中使用JSON对象。此调用必须同步进行,因为它会加载重要数据。

任何帮助将不胜感激。


问题答案:

明确指示jQuery将响应视为文本:

$.ajax({
  // ...
  dataType: "text",
  // ...
});

然后,您将能够获取JSON字符串。但是,如果您打算此后将其转换为JS值,请让我停止:jQuery可以自动为您完成此操作。如果您指定dataTypeto
"json",或者只是让jQuery做出明智的猜测,则data传递给success:函数的参数将是解析的JSON对象。



 类似资料:
  • 问题内容: 怎么转换成?如果应该这样做 那怎么算呢? 以及如何转换为? 问题答案: 缓冲区长度为frameCapacity * bytesPerFrame。以下是可以在NSData和AVAudioPCMBuffer之间进行转换的函数。

  • 我希望代码得到一个int作为参数,如果年龄是奇数,则加3,如果是偶数,则加2,然后作为字符串返回。 有了这个代码我得到了 不兼容的类型:无法将int转换为字符串 九号线不是已经换了吗?

  • 我正在使用spark-sql-2.4。1v和Java 8。我有一个用例,如下所示, 我需要根据另一个数据集的条目进行一些操作。 我需要并行处理所有代码。做同样的事情,我正在尝试如下: 如何在集群上并行工作?

  • 我想发送这个示例数组 作为二进制数据发送到我的websocket服务器。在服务器端,我希望将二进制数据解码回数组,进行更改并将二进制数据发送回客户端。最后在客户端,如何将二进制数据解码回数组? 示例截图我的意思是: 这是我的实际代码: 服务器端代码: 我现在可以将消息作为二进制帧发送到websocket服务器。我找到了将字符串转换为二进制类型并将其发送到ws-server的函数。 现在我有问题了。

  • 问题内容: 我正在尝试将HTML表中存在的数据转换为JSON,以便可以在服务器端进行相应的处理。我可以序列化数据,但是结果充其量只能生成不直接链接的独特数据数组。像:这是我正在使用的形式: 序列化数据的脚本是: 经过数页StackOverFlow之后,我得到了serializeFormJSON(): 通过使用所有这些,我可以得到像这样的JSON: 我尝试了多种方法以名称-性别格式获取它们,但是每种

  • 问题内容: 我正在尝试将转换为,而我的代码如下: 控制台会打印如下内容: 的是,我不知道这里有什么问题。 之后,我尝试像这样进行排序: 和控制台打印: 一切正常。 那么,有人可以告诉我我的第一个案例有什么问题吗? 问题答案: 正如Martin R所建议的,我看到了这篇文章,并将那个Objective- C代码转换为swift并且得到了以下代码: 并且这正常工作。 对于Swift 3.0: