在DOM元素中存数据,可以使用DOM元素的属性(内置的)和特性(自定义的)。但直接这样做,可能会导致内存泄漏等安全问题。下面将介绍 一种 由jQuery提供的更安全的在DOM元素存取数据的方法。
获取数据的值:data( [name] )
设置数据的值:data(name, value) data(object) ---- 批量传入,传对象即可。
返回该DOM所有的data:data()
删除数据:removeData( [name] )
判断是否有数据:jQuery.hasData(element)
示例一:
<script type="text/javascript">
$(function(){
var p = $('p');
var checkbox = $('#check')
console.log(checkbox.data('description'))
console.log(checkbox.attr('description'))
console.log(checkbox.prop('description'))
checkbox.data('des','i am a data des')
console.log(checkbox.data('des'))
})
</script>
示例二:
console.log($.hasData(checkbox.get(0) ) )
注意:
data 设置DOM的性质的时候,可以保留数据的类型,而不是将数据转换为字符串(像属性和特性)。