为了账号安全,请及时绑定邮箱和手机立即绑定

更改 HTML5 自定义数据属性中的 div 内容

更改 HTML5 自定义数据属性中的 div 内容

LEATH 2023-08-18 16:14:17
我在 file1.html 中声明了以下 div 来绘制一个漂亮的仪表。div 使用一些 HTML5 自定义数据属性,如下所示:<div class="gauge" id="meter1" data-settings='   {"value": 7,    "min": 0,    "max": 50,    "threshold": [      {"from": 25, "to": 50, "color": "blue", "label": "Warning"},      {"from": 0, "to": 25, "color": "orange", "label": "Critical"}        ]    }'></div>现在在 Javascript 中,如何调用 div 并为“value”属性和“threshold”属性设置新数字?谢谢
查看完整描述

2 回答

?
www说

TA贡献1775条经验 获得超8个赞

您可以使用以下功能来完成您的任务:

  • element.getAttribute获取属性内的值

  • element.setAttribute设置属性内的值

  • JSON.stringifyJSON.parse使用 JSON

检查下面的代码。

var meter1 = document.getElementById("meter1")

var dataSettings = JSON.parse(meter1.getAttribute("data-settings"))

dataSettings.value = 8

dataSettings.min = 5


meter1.setAttribute("data-settings", JSON.stringify(dataSettings))


console.log(meter1.getAttribute("data-settings"))

<div class="gauge" id="meter1" data-settings='

   {"value": 7,

    "min": 0,

    "max": 50,

    "threshold": [

      {"from": 25, "to": 50, "color": "blue", "label": "Warning"},

      {"from": 0, "to": 25, "color": "orange", "label": "Critical"}

        ]

    }'></div>


查看完整回答
反对 回复 2023-08-18
?
杨魅力

TA贡献1811条经验 获得超5个赞

您可以document.querySelector使用JSON.parse


const gauge = document.querySelector('#meter1');

 

console.log(JSON.parse(gauge.dataset.settings).threshold)

<div class="gauge" id="meter1" data-settings='

   {"value": 7,

    "min": 0,

    "max": 50,

    "threshold": [

      {"from": 25, "to": 50, "color": "blue", "label": "Warning"},

      {"from": 0, "to": 25, "color": "orange", "label": "Critical"}

        ]

    }'></div>


查看完整回答
反对 回复 2023-08-18
  • 2 回答
  • 0 关注
  • 88 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信