javascript - 如何从 AJAX 成功函数解析此 json 字符串?

标签 javascript jquery ajax json json-deserialization

有人可以帮忙从 json 字符串中解析一些数据吗?这是 JSON 数据:

data = "{\"centerLatitude\":-41.22766,\"centerLongitude\":174.812761,\"mapTypeId\":\"google.maps.MapTypeId.ROADMAP\",\"zoom\":18}"

在我的 AJAX 代码中,我有以下代码:

success: function (mapDetailsData) {
    var data = jQuery.parseJSON(mapDetailsData);
    alert(data.centerLatitude);
    alert(data.centerLongitude);
}

我在控制台中收到以下错误:

Uncaught SyntaxError: Unexpected token o

如果我指定JSON数据如下:

var data = jQuery.parseJSON('{\"centerLatitude\":-41.22766,\"centerLongitude\":174.812761,\"mapTypeId\":\"google.maps.MapTypeId.ROADMAP\",\"zoom\":18}');
alert(data.centerLatitude);
alert(data.centerLongitude);

警报 显示正确的数据。

我需要如何编写 ajax 代码来显示 centerLatitudecenterLongitude 的正确值?

提前致谢。

最佳答案

假设你将 datatype 参数设置为 json (或者保留默认设置,它自己识别 JSON 格式)那么 jQuery 将自动反序列化响应为你。您看到的错误通常表明您正在尝试解析两次。试试这个:

success: function (mapDetailsData) {
    alert(mapDetailsData.centerLatitude);
    alert(mapDetailsData.centerLongitude);
}

关于javascript - 如何从 AJAX 成功函数解析此 json 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30454183/

相关文章:

javascript - 隐藏 Div 内的所有表格,但仅保留位于内部 Div 之前的一张表格

javascript - jQuery .find ("body").html() == null

css - 使用 mootools 设置 innerHTML 后调整 div 的大小

jQuery 如何在表单提交上查找按钮值

javascript - 更改 Jquery 加载的页面 URL

javascript - 如何使 "add new record"将字段表示为复选框 - Kendo Grid

javascript - 初始化插件后执行 jQuery 代码

jquery - 阻止 JQuery .html() 剥离 tr/td 标签

javascript - 使用 Javascript 获取工作日并突出显示 HTML 中的文本

php - 将纬度/经度转换为像素 XY 坐标