jQuery এর .ডাটা () কয়েকটি কাজ করে তবে এটি কোনও বৈশিষ্ট্য হিসাবে DOM এ ডেটা যুক্ত করে না। কোনও ডেটা অ্যাট্রিবিউট দখল করার জন্য এটি ব্যবহার করার সময়, এটি প্রথমে যা করে তা হ'ল একটি জিকুয়েরি ডেটা অবজেক্ট তৈরি করে এবং বস্তুর মান ডেটা অ্যাট্রিবিউটকে সেট করে। এর পরে, এটি ডেটা অ্যাট্রিবিউট থেকে মূলত ডিকপলড হয়।
উদাহরণ:
<div data-foo="bar"></div>
আপনি যদি ব্যবহার করে গুণকের মানটি ধরে নেন তবে .data('foo')
এটি আপনার প্রত্যাশা অনুযায়ী "বার" ফিরে আসবে। এরপরে আপনি যদি মানটিটি ব্যবহার করে বিশিষ্টতাটি পরিবর্তন করেন .attr('data-foo', 'blah')
এবং পরে .data('foo')
মানটি দখল করতে ব্যবহার করেন তবে এটি ডিওএম বললেও "বার" ফিরে আসবে data-foo="blah"
। আপনি যদি .data()
মান সেট করতে ব্যবহার করেন তবে এটি jQuery অবজেক্টে DOM তে নয় তবে মানটি পরিবর্তন করবে।
মূলত, .data()
jQuery অবজেক্টের ডেটা মান নির্ধারণ বা পরীক্ষা করার জন্য। আপনি যদি এটি যাচাই করে থাকেন এবং এর মধ্যে ইতিমধ্যে একটিটি নেই, এটি ডিওমে থাকা ডেটা অ্যাট্রিবিউটের ভিত্তিতে মান তৈরি করে। .attr()
এটি ডিওএম উপাদানটির বৈশিষ্ট্যযুক্ত মানটি নির্ধারণ বা পরীক্ষার জন্য এবং jQuery ডেটা মানটি স্পর্শ করবে না। আপনার যদি উভয়কে পরিবর্তন করার প্রয়োজন হয় তবে আপনার উভয় .data()
এবং ব্যবহার করা উচিত .attr()
। অন্যথায়, এক বা অন্য সাথে লেগে থাকুন।
.data()
যদি না আপনার ব্যবহারের কারণ না থাকে তবে ব্যবহার করুন.attr()
।