JS JQuery获取data-*属性值方法解析


Posted in jQuery onSeptember 01, 2020

下面就详细介绍四种方法获取data-*属性的值

<li id="getId" data-id="122" data-vice-id="11">获取id</li>

需要获取的就是data-id 和 dtat-vice-id的值

一:getAttribute()方法

const getId = document.getElementById('getId');
// //getAttribute()取值属性
console.log(getId.getAttribute("data-id"));//122
console.log(getId.getAttribute("data-vice-id"));//11
// //setAttribute()赋值属性
getId.setAttribute("data-id","48");
console.log(getId.getAttribute("data-id"));//48

二:dataset()方法

//data-前缀属性可以在JS中通过dataset取值,更加方便
console.log(getId.dataset.id);//112
//data-vice-id连接取值使用驼峰命名法取值 
console.log(getId.dataset.viceId);//11

//赋值
getId.dataset.id = "113";//113
getId.dataset.viceId--;//10

//新增data属性
getId.dataset.id2 = "100";//100

//删除,设置成null,或者delete
getId.dataset.id2 = null;//null
delete getId.dataset.id2;//undefind

三:jquery data()方法

var id = $("#getId").data("id"); //122
var viceId = $("#getId").data("vice-id"); //11
//赋值
$("#getId").data("id","100");//100

jquery data 是一种缓存机制

用法如下:

data()方法

//HTML代码 <div id="myDiv" data-appid="123" data-myname="lsxj" data-app-id="456" data-my-name="secondname"></div>

//获取属性
var appid = $("#myDiv").data("appid"); //123
var app-id = $("#myDiv").data("app-id"); //456

//属性赋值 $("#myDiv").data("appid","666");

//最终HTML代码 <div id="myDiv" data-appid="123" data-myname="lsxj" data-app-id="456" data-my-name="secondname"></div>

需要注意的是,data()的值进行修改并不会影响到DOM元素上的data-*属性的改变。data()的本质其实是将一个 “cache” 附加到了对象上,并使用了一个特殊的属性名称。

所以上述代码中,虽然对div进行了data()赋值操作,但HTML代码中div的data-appid的值仍然为123,因为data()只是修改了缓存的那个值,此时进行$('#myDiv').data("appid")的操作,输出的结果为666.

四:jquery attr()方法

var id = $("#getId").attr("data-id"); //122
var viceId = $("#getId").attr("data-vice-id"); //11
//赋值
$("#getId").attr("data-id","100");//100

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
Jun 09 jQuery
jquery单击文字或图片内容放大并居中显示
Jun 23 jQuery
jQuery Easyui Treegrid实现显示checkbox功能
Aug 08 jQuery
Django中使用jquery的ajax进行数据交互的实例代码
Oct 15 jQuery
jQuery实现右侧抽屉式在线客服功能
Dec 25 jQuery
JQuery Ajax动态加载Table数据的实例讲解
Aug 09 jQuery
vue-cli 引入jQuery,Bootstrap,popper的方法
Sep 03 jQuery
jQuery实现为动态添加的元素绑定事件实例分析
Sep 07 jQuery
jQuery轻量级表单模型验证插件
Oct 15 jQuery
jQuery选择器之层次选择器用法实例分析
Feb 19 jQuery
jQuery实现鼠标滑动切换图片
May 27 jQuery
jQuery实现计算器功能
Oct 19 jQuery
jQuery实现动态加载瀑布流
Sep 01 #jQuery
js和jquery判断数据类型的4种方法总结
Aug 28 #jQuery
jQuery编写QQ简易聊天框
Aug 27 #jQuery
jQuery实现简单QQ聊天框
Aug 27 #jQuery
基于jquery实现彩色投票进度条代码解析
Aug 26 #jQuery
Jquery 获取相同NAME 或者id删除行操作
Aug 24 #jQuery
jQuery实现评论模块
Aug 19 #jQuery
You might like
PHP4在Windows2000下的安装
2006/10/09 PHP
JS 网站性能优化笔记
2011/05/24 PHP
几种有用的变型 PHP中循环语句的用法介绍
2012/01/30 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
2016/03/21 PHP
thinkPHP5.0框架引入Traits功能实例分析
2017/03/18 PHP
PHP中OpenSSL加密问题整理
2017/12/14 PHP
PDO::inTransaction讲解
2019/01/28 PHP
Code: write(s,d) 输出连续字符串
2007/08/19 Javascript
jQuery autocomplete插件修改
2009/04/17 Javascript
aspx中利用js实现确认删除代码
2010/07/22 Javascript
打造基于jQuery的高性能TreeView(asp.net)
2011/02/23 Javascript
Javascript中产生固定结果的函数优化技巧
2013/01/16 Javascript
浅析jquery ajax异步调用方法中不能给全局变量赋值的原因及解决方法
2014/01/10 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
jQuery插件slick实现响应式移动端幻灯片图片切换特效
2015/04/12 Javascript
JS实现获取键盘按下的按键并显示在页面上的方法
2015/11/04 Javascript
jQuery实现手机上输入后隐藏键盘功能
2017/01/04 Javascript
EasyUI在Panel上动态添加LinkButton按钮
2017/08/11 Javascript
Vue代码分割懒加载的实现方法
2017/11/23 Javascript
微信小程序实现点击文字页面跳转功能【附源码下载】
2017/12/12 Javascript
微信小程序时间轴实现方法示例
2019/01/14 Javascript
Vue实现类似Spring官网图片滑动效果方法
2019/03/01 Javascript
django模型中的字段和model名显示为中文小技巧分享
2014/11/18 Python
Python实现将绝对URL替换成相对URL的方法
2015/06/28 Python
django文档学习之applications使用详解
2018/01/29 Python
python 调用有道api接口的方法
2019/01/03 Python
pyhton中__pycache__文件夹的产生与作用详解
2019/11/24 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
Python容器类型公共方法总结
2020/08/19 Python
阿玛尼意大利官网:Armani意大利
2018/10/30 全球购物
实习指导老师评语
2014/04/26 职场文书
关于爱国的标语
2014/06/24 职场文书
2014年教师节讲话稿5篇
2014/09/10 职场文书
余世维讲座观后感
2015/06/11 职场文书
Python手拉手教你爬取贝壳房源数据的实战教程
2021/05/21 Python
健身房被搭讪?用python写了个小米计时器助人为乐
2021/06/08 Python