javascript - 如何将对象从 HTML 传递到 JavaScript
问题描述
如何将 html 数据属性转换为 JavaScript 对象?
我尝试使用 JSON.parse() 但它出现了一些错误
我的字符串数据的结果
{
_id: 5f71ea3362749a305427a012,
name: 'House With Beauty Backyard',
__v: 0
}
当我使用 JSON.parse() 它返回错误
VM5246:2 Uncaught SyntaxError: Unexpected token _ in JSON at position 4
我的 EJS 代码
<a href="javascript:void()" data-category="<%= category[i] %>"><i class="fas fa-edit"></i></a>
我的 JS 代码
<script>
$('#dataTable .btn-update').on('click', function () {
let dataString = $(this).data('category');
console.log(dataString);
let dataJson = JSON.parse(dataString);
console.log(dataJson);
$('#update-modal').modal('show');
})
</script>
解决方案
JSON 需要引号 ("") 来表示键和字符串值。
这将是您具有有效形式的“字符串数据”:
{
"_id": "5f71ea3362749a305427a012",
"name": "House With Beauty Backyard",
"__v": 0
}
如果您将数据格式更改为有效的 JSON,解析错误将消失。(RFC 8259)
在这里您可以找到有关 JSON 的更多信息: https ://tools.ietf.org/pdf/rfc8259.pdf
推荐阅读
- databricks - Databricks Delta Lake `mergeSchema` 选项如何处理不同的数据类型?
- python - 文件资源管理器在 Tkinter Python 程序中自动打开
- javascript - Reactjs ERR_INVALID_ARG_TYPE
- python - 为什么我不能从我的烧瓶应用程序控制台日志数据?我正在使用神社
- javascript - NextJS - 不从生产中的节点模块导入样式
- google-cloud-platform - 允许 gcp 实例上的 imap 端口?
- css - 将链接颜色添加到 CSS 属性组
- java - 处理来自发布者的并行耗尽的数据
- java - 清除除顶部片段外的片段回栈
- python - 如何在 Dataframe 中实现“Year + 1”