首页 > 其他分享 >js读取data-属性

js读取data-属性

时间:2022-11-12 13:46:59浏览次数:34  
标签:console 读取 name js user data id log

标签上有两个属性​​data-id​​​ 和 ​​data-user-name​​, 需要通过js去获取

1 2 3 4 5 6 7 8 9 <style> #user::before { content: attr(data-id); } #user::after { content: attr(data-user-name); } </style> <div id="user" data-id="666" data-user-name="Tom"></div>

方式一:dataset

1 2 3 4 5 6 7 8 9 10 11 12 13 let user = document.querySelector("#user");   // 取值 中划线要转为驼峰命名法 console.log(user.dataset.id); // 666 console.log(user.dataset.userName); // Tom // 赋值 user.dataset.id = 777; user.dataset.userName = "Jack"; // 新增属性 user.dataset.age = 23; // 删除属性 delete user.dataset.userName; // <div id="user" data-id="777" data-age="23"></div>

方式二: getAttribute/setAttribute/removeAttribute

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 let user = document.querySelector("#user");   // 取值 console.log(user.getAttribute("data-id")); // 666 console.log(user.getAttribute("data-user-name")); // Tom console.log(typeof user.getAttribute("data-id")); // string // 赋值 user.setAttribute("data-id", 777);   // 新增属性 user.setAttribute("data-age", 23);   // 删除属性 user.removeAttribute("data-user-name"); // <div id="user" data-id="777" data-age="23"></div>

方法三:jQuery.attr

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script> let user = $('#user');   // 取值 console.log(user.attr("data-id")); // 666 console.log(user.attr("data-user-name")); // Tom   // 赋值 user.attr("data-id", 777);   // 新增属性 user.attr("data-age", 23); // 删除属性 user.removeAttr("data-user-name"); // <div id="user" data-id="777" data-age="23"></div> </script>

方法四:jQuery.data

注意:$.data()的值进行修改并不会影响到DOM元素上的data-*属性的改变

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script> let user = $("#user"); // 取值 console.log(user.data("id")); // 666 console.log(user.data("user-name")); // Tom // 赋值 user.data("id", 777); // 新增属性 user.data("age", 23); // 删除属性 user.removeData("user-name"); console.log(user.data()); // {id: 777, age: 23, userName: 'Tom'} // data() 操作没有影响到dom元素的属性变化 // <div id="user" data-id="666" data-user-name="Tom"></div> </script>

标签:console,读取,name,js,user,data,id,log
From: https://www.cnblogs.com/QunShan/p/16883573.html

相关文章

  • Js进行base64编码解码(解决中文乱码)
    常规方法:编码//base64转字符串getEncode64(str){//对字符串进行编码varencode=encodeURI(str);//对编码的字符串转化base64varbase64=......
  • 什么是DataFrame
    Pandas数据结构-DataFramePandasDataFrame是一个二维的数组结构,类似二维数组。DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、......
  • 涨姿势了,这 4 个场景可用 CSS 完全取代 JS ~
    本篇通译自:​​#It’s2022.SometimesYouDon’tNeedJavascriptatAll​​1.颜色选择器我们通常需要通过复杂的JavaScript来实现一个类似下图的颜色选择器组件。好......
  • Jsp中EL表达式不起作用
    困扰了很久的JSP中的表达式被当成字符串处理,原因是出于版本不同,有些isELIgnored属性默认值为false,但有些默认为true;所以这里要手动配置isELIgnored的属性为false<%@pag......
  • ks.cfg 怎么读取光盘 (cdrom) 上的文件并执行对应的脚本
    ks.cfg文件怎么实现读取光盘(CDROM)上的内容并执行自定义脚本我们知道linux系统安装过程中,要想实现自动化安装,一般都是利用Kickstart这个工具实现,最重要的就是其配......
  • nodejs 遍历文件夹下所有文件
    constfs=require("fs");letfileArr=[];constdir="E:/Hbuilder-Content/7.19新增页面";main(dir);console.log(fileArr);functionmain(currentPath){......
  • src/mixin/showButton.js
    exportdefault{//按钮权限methods:{showBtn(code){return(this.$store.state.user.userInfo.roles&&this.$store.state.user.......
  • store/user.js
    //解决:切换帐号时上一帐号权限会影响下一帐号import{resetRouter}from'@/router'//删除用户信息与tokenlogout(state){state.token=''state......
  • 9. JS的数据类型,区别
    js有2大数据类型分类: 基本数据类型:1.string字符串使用单、双引号包裹,或者使用反引号包裹2.number数字类型3.boolean布尔值truefalse ......
  • Export2Excel.js
    /*eslint-disable*///1:下载file-saverxlsx,如果出现问题,如果以前是yarn,先执行yarn如果还不行,再执行npmi再运行,如果还不行自行调整版本yarnadd插件名@版......