jquery 手册
Ajax
属性(Attributes)
回调对象(Callbacks ..
核心(Core)
CSS
数据(Data)
延迟对象(Deferred o ..
尺寸(Dimensions)
效果(Effects)
事件(Events)
表单(Forms)
文档操作(Manipulati ..
杂项(Miscellaneou ..
位置(Offset)
插件编写(Plugin Aut ..
属性(Properties)
选择器(Selectors)
遍历(Traversing)
工具(Utilities)

Returns: jQueryjQuery .removeData( Array,String list )

描述:删除之前通过 data() 方法设置的数据.
  • version added: 1.2.3
  • .removeData( String name )
  • name 一个字符串,要删除数据块的名字.
  • version added: 1.7
  • .removeData( Array,String list )
  • list 一个数组或空格分隔的字符串,删除的数据块的名字(多个).

.removeData() 方法允许我们移除之前使用.data()方法存储的数据。 当用键值作为参数时,.removeData()删除特定的数据;当不使用参数时,该方法将从被选元素中删除所有已存储的数据。 从jQuery的内部 .data() 缓存不影响任何在文档中的HTML5的data-属性,使用.removeAttr()可以移除这些属性。

从 jQuery 1.7 开始, 键数组或一个空间分隔键的字符串,.removeData()删除在该数组或字符串的每一个键值.

从 jQuery 1.4.3 开始, 调用的.removeData()将导致属性值被删除恢复到DOM中的名称相同的数据属性的值,而不是设置undefined.

Examples:

例子:

设置一个有2个名字的数据存储然后移除其中一个.
<!DOCTYPE html>
<html>
<head>
  <script src="../jquery.min.js"></script>
  <style>div { margin:2px; color:blue; }
  span { color:red; }</style>
</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>

Demo: