首页 > 解决方案 > 数据名称(数据集)属性未正确报告

问题描述

我在元素节点(El.dataset.FTid=i;)上创建了一个自定义数据集属性,其中 i 是一个数字,但是当我使用(El.attributes)查看它时,属性名称报告为(data- -f-tid) 而不是 (data-FTid) 如预期的那样。很奇怪!火狐 63.0.3(64 位)。

标签: javascriptdomattributesdataset

解决方案


在设置 DOM 元素集合的属性时,它们将按照以下规则dataset自动转换为相应的属性名称:

camelCase 到 dash 样式:相反的转换,将键映射到属性名称,使用以下规则:

限制:

  • 破折号后面不能紧跟 ASCII 小写字母 a 到 z(在转换之前);

  • 添加了前缀 data- ;

  • 任何 ASCII 大写字母 A 到 Z 都转换为破折号,后跟对应的小写字母;

  • 其他字符保持不变。

在您的情况下,您可能应该使用:

El.dataset.ftId = i;

可通过以下方式访问:

El.getAttribute('data-ft-id')

推荐阅读