.removeData()

.removeData( [name ] )返回类型:jQuery

描述:删除先前存储的数据片断。

.removeData()方法允许我们删除先前用.date()方法设置的值。当带有键名调用它时,.removeData()删除特性的值。当不带参数调用它时,.removeData()删除所有的值。

请注意.removeData()只删除来自jQuery内部的.data()缓存的数据,元素上任何对应的data-特性不会被删除。以后再次调用data(),将再次检索来自data-特性的值。为了防止这,请用.removeAttr()配合.removeData()来并同删除data-特性。在jQuery 1.4.3以前,因为data()并不使用data-特性,所以这不成问题。

自从jQuery 1.7以来,当用一个键的数组或空格隔开的键的字符串调用它时,.removeData()删除数组或字符串中的每个键的值。

示例:

针对两个名称设置数据,然后删除它们中的一个。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>removeData demo</title>
<style>
div {
margin: 2px;
color: blue;
}
span {
color: red;
}
</style>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<div>value1 before creation: <span></span></div>
<div>value1 after creation: <span></span></div>
<div>value1 after removal: <span></span></div>
<div>value2 after removal: <span></span></div>
<script>
$( "span:eq(0)" ).text( "" + $( "div" ).data( "test1" ) );
$( "div" ).data( "test1", "VALUE-1" );
$( "div" ).data( "test2", "VALUE-2" );
$( "span:eq(1)" ).text( "" + $( "div").data( "test1" ) );
$( "div" ).removeData( "test1" );
$( "span:eq(2)" ).text( "" + $( "div" ).data( "test1" ) );
$( "span:eq(3)" ).text( "" + $( "div" ).data( "test2" ) );
</script>
</body>
</html>

演示: