التابع ‎‎.removeData()‎‎ في jQuery

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

‎.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

مصادر