javascript - 在标签中包含 JavaScript/jQuery 对象数据
问问题
127 次
3 回答
2
最好使用data-jquery
. 所有data-
属性都旨在添加额外的数据(它是 HTML5 规范的一部分)。浏览器不会抱怨。
只需确保转义代码以避免使用问题escape()
,然后unescape()
在解析 JSON 之前使用。
于 2013-09-06T23:03:00.307 回答
0
关于发明自己的标签的正确约定是在它们前面加上“data-”,比如“data-jquery-data”。然后,您需要更改代码以使用target.data("jquery-data")
.
另一点是,如果要解析的字符串不是 JSON,$.parseJSON 会抛出异常。所以你会想做类似的事情
var data;
try {
data = $.parseJSON(target.data('jquery-data'));
} catch() {
if(data) {
console.log(data);
}
}
除此之外,我认为应该还可以。
于 2013-09-06T23:07:47.497 回答
0
您可以对对象进行 base64 编码,然后进行解码。这可能不是最精简的方式,但它确实可以完成工作。您需要一个 b64 编码和解码功能
<a data-json="eydkYXRhJzogJ3ZhbHVlJ30="></a>
var json = JSON.parse(b64Decode(object.getAttribute('data-json')));
Console.log(Object.keys(json));
于 2013-09-06T23:21:25.413 回答