关于用data开头属性的取值

1、关于元素的属性值,可以用attr取值,如果是data开头的属性,如:data-id,则也可以使用data("id"),获取属性值。

<p class="test-p1" data-test1="data">测试data取值和attr取值</p>
console.log("data1:"+$(".test-p1").data("test1"));//data
console.log("attr1:"+$(".test-p1").attr("data-test1"));//data

2、但是,如果元素是在js里面设置的属性值,就会出现两种情况:

1)、使用attr设置属性值,使用attr,data都可以获取值

<p class="test-p1">测试data取值和attr取值</p>
$(".test-p1").attr("data-test2","data2");
console.log("data3:"+$(".test-p1").data("test2"));//data2
console.log("attr3:"+$(".test-p1").attr("data-test2"));//data2

2)、使用data设置属性,只能使用data获取值,attr会提示undefined

<p class="test-p1">测试data取值和attr取值</p>
$(".test-p1").data("test3","data3");
console.log("data3:"+$(".test-p1").data("test3"));//data3
console.log("attr3:"+$(".test-p1").attr("data-test3"));//undefined
与尘埃中开出花朵。
原文地址:https://www.cnblogs.com/congfeicong/p/7604134.html