您的位置:首页技术文章
文章详情页

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

【字号: 日期:2024-04-22 14:33:13浏览:14作者:猪猪

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

<li data- data-vice-id='11'>获取id</li>

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

一:getAttribute()方法

const getId = document.getElementById(’getId’);// //getAttribute()取值属性console.log(getId.getAttribute('data-id'));//122console.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';//113getId.dataset.viceId--;//10//新增data属性getId.dataset.id2 = '100';//100//删除,设置成null,或者deletegetId.dataset.id2 = null;//nulldelete getId.dataset.id2;//undefind

三:jquery data()方法

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

jquery data 是一种缓存机制

用法如下:

data()方法//HTML代码 <div data-appid='123' data-myname='lsxj' data-app- data-my-name='secondname'></div>//获取属性var appid = $('#myDiv').data('appid'); //123var app-id = $('#myDiv').data('app-id'); //456//属性赋值 $('#myDiv').data('appid','666');//最终HTML代码 <div data-appid='123' data-myname='lsxj' data-app- 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'); //122var viceId = $('#getId').attr('data-vice-id'); //11//赋值$('#getId').attr('data-id','100');//100

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。

标签: JavaScript
相关文章: