javascript - 如何在 jQuery 中解析这个无效的 JSON 字符串?

标签 javascript jquery json

我希望访问此数据属性中的各个数据位:

<div class="location" data="{id: 4, point: {lng: -71.413364, lat: 41.673681}, category: 'Restaurant'}">

当然,在 jQuery 中数据属性很容易访问。但字符串似乎是非标准或无效的 JSON 形式。我尝试过 JSON.parse() 以及分割数组的基本 JS 方法。从各方面来看,它似乎只是一个无效的序列化字符串。

我需要重新格式化数据字符串吗? (它不是来 self ,它被其他我不想破坏的例程使用,所以......)

最佳答案

通常我会说这是危险的(事实上我现在就会这么说),但请尝试:

var decoded;  eval("decoded = " + $('div.location').attr('data'));

这是无效的 JSON,因为标签未加引号。

关于javascript - 如何在 jQuery 中解析这个无效的 JSON 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2875318/

相关文章:

javascript - 结合 AngularJS、RequireJS 和 asp.NET 时出错

json - JacksonProviderProxy在json输出中写出空值

javascript - 在 php 中使用 javascript 发送克隆项目

javascript - 在 vanilla JS 中制作简单的 2D 线动画

javascript - 基于倾向性的流体响应图像网格

javascript - Jquery 通过单击复选框仅更改一段

jquery - 我该如何对此进行回调?

javascript - 检测按键中的左移或右移键 - JQuery

java - Jackson ObjectMapper readValue() 解析为对象时无法识别字段

java - 用 Java 从 Amazon S3 读取文件的最佳方式