التابع .removeData()
في jQuery
.removeData( [name ] )
القيم المعادة
يعيد كائنًا من النوع jQuery.
الوصف
يحذف هذا التابع جزءًا من البيانات المخزَّنة مسبقًا.
.removeData( [name ] )
أُضيف مع الإصدار: 1.2.3.
name
سلسلة نصيِّة تمثِّل اسم جزء البيانات المراد حذفها.
.removeData( [list ] )
أُضيف مع الإصدار: 1.7.
list
مصفوفة أو سلسلة نصية تحتوي على أسماء أجزاء البيانات المراد حذفها، وتفصل الأسماء في السلسلة النصية بفراغ.
يسمح لنا التابع .removeData()
بحذف القيم التي ضُبطت مسبقًا باستعمال التابع .data()
. إن مرِّر إلى التابع اسم مفتاح الجزء المراد حذفه، فستُحذف تلك القيم المحدَّدة فقط. إن لم يمرَّر إلى التابع أي وسيط، فستُحذف جميع القيم.
الجدير بالذكر أنَّ التابع .removeData()
سيحذف البيانات من مخزن البيانات الداخلي في jQuery فقط، بينما لن يحذف أية خاصِّيَّات (attributes) مقابلة تبدأ بالاسم data-
في العنصر. الاستدعاء اللاحق للتابع data()
سيسترجع القيمة من الخاصِّيَّة data-
؛ ولمنع ذلك، يجب استعمال التابع .removeAttr()
والتابع .removeData()
جنبًا إلى جنب لحذف الخاصِّيَّات data-
أيضًا. بما أنَّه لم يستعمل التابع data()
الخاصِّيَّات data-
قبل الإصدار jQuery 1.4.3، فلم يكن لهذا الأمر أي أهمية تذكر.
بدءًا من الإصدار jQuery 1.7، أصبح بالإمكان تمرير مصفوفة من المفاتيح أو سلسلة من المفاتيح المفصولة بفراغ إلى التابع .removeData()
، وهذا سيؤدي بدوره إلى حذف قيمة كل مفتاح معطى في تلك المصفوفة أو السلسلة.
أمثلة
تعيين مخزن بيانات لاسمين ثمَّ حذف أحدهما:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>removeData مثالٌ عن استعمال التابع</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>القيمة الأولى قبل إنشائها: <span></span></div>
<div>القيمة الأولى بعد إنشائها: <span></span></div>
<div>القيمة الأولى بعد حذفها: <span></span></div>
<div>القيمة الثانية بعد حذفها: <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>
نتيجة تنفيذ المثال السابق هي:
القيمة الأولى قبل إنشائها: undefined
القيمة الأولى بعد إنشائها: VALUE-1
القيمة الأولى بعد حذفها: undefined
القيمة الثانية بعد حذفها: VALUE-2