溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js如何獲取標簽元素data-*屬性值

發(fā)布時間:2022-06-01 15:07:40 來源:億速云 閱讀:634 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹“js如何獲取標簽元素data-*屬性值”,在日常操作中,相信很多人在js如何獲取標簽元素data-*屬性值問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”js如何獲取標簽元素data-*屬性值”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

前言:

標簽上有兩個屬性data-iddata-user-name, 需要通過js去獲取

<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

let user = document.querySelector("#user");

// 取值 中劃線要轉(zhuǎn)為駝峰命名法
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

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

<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-*屬性的改變

<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>

到此,關于“js如何獲取標簽元素data-*屬性值”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI