XML DOM - বৈশিষ্ট্য ও পদ্ধতি
- পূর্ববর্তী পৃষ্ঠা DOM লোড
- পরবর্তী পৃষ্ঠা DOM এক্সেস নোড
প্রকৃতি এবং মথুদক্তা XML DOM-কে প্রোগ্রামিং ইন্টারফেস নির্ধারিত করে
ইনস্ট্যান্স
নিচের উদাহরণ XML ফাইল ব্যবহার করে books.xml。
ফাংশন loadXMLDoc()বাইরের JavaScript-এ অবস্থিত
ফাংশন loadXMLString()বাইরের JavaScript-এ অবস্থিত
প্রোগ্রামিং ইন্টারফেস
DOM XML-কে একসূচি নোড ইন্টারফেস হিসাবে মিলিয়েছে। নোডগুলোকে JavaScript বা অন্য প্রোগ্রামিং ভাষা দ্বারা পরিদর্শন করা যায়। এই পাঠ্যক্রমে আমরা JavaScript-এর ব্যবহার করি。
DOM-এর প্রোগ্রামিং ইন্টারফেস একটি প্রমাণিত প্রকৃতির অ্যাট্রিবিউট এবং মথুদক্তা দ্বারা নির্ধারিত হয়。
প্রকৃতিসাধারণত "কী হয়েছে এটা"-র মাধ্যমে ব্যবহার করা হয় (উদাহরণস্বরূপ, নোডের নাম "book"-এর)।
পদ্ধতিসাধারণত "কোনো কিছুর কী করা"-এর ধারায় ব্যবহৃত হয় (উদাহরণস্বরূপ "book" ইলেকট্রনমুখ মুক্ত করা)
XML DOM গুণ
কিছু সাধারণ DOM গুণ:
- x.nodeName - x-এর নাম
- x.nodeValue - x-এর মূল্য
- x.parentNode - x-এর পারিবারিক নোড
- x.childNodes - x-এর সন্তান নোড
- x.attributes - x-এর গুণ নোড
মুক্তো মুক্তো:উপরোক্ত তালিকায়, x একটি নোড অবজেক্ট
XML DOM পদ্ধতি
- x.getElementsByTagName(name) - নির্দিষ্ট ট্যাগ নামের সকল ইলেকট্রনমুখ পাওয়া
- x.appendChild(node) - x-এ সন্তান নোড যুক্ত করা
- x.removeChild(node) - x থেকে সন্তান নোড মুক্ত করা
মুক্তো মুক্তো:উপরোক্ত তালিকায়, x একটি নোড অবজেক্ট
ইনস্ট্যান্স
books.xml-এর <title> ইলেকট্রনমুখ থেকে টেক্সট পাওয়ার JavaScript কোড
txt=xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue
এই বাক্যটি বাস্তবায়নের পর, txt সংরক্ষিত মূল্য "Harry Potter"
ব্যাখ্যা:
- xmlDoc - পার্সার দ্বারা তৈরি একটি XML DOM
- getElementsByTagName("title")[0] - প্রথম <title> ইলেকট্রনমুখ
- childNodes[0] - <title> ইলেকট্রনমুখের প্রথম সন্তান (টেক্সট নোড)
- nodeValue - নোডের মূল্য (টেক্সট স্বয়ং)
উপরোক্ত উদাহরণে, getElementsByTagName একটি পদ্ধতি, এবং childNodes এবং nodeValue একটি গুণ
XML ফাইল পার্স - ক্রস ব্রাউজার ইনস্ট্যান্স
নিচের কোডটি loadXMLDoc ফাংশনটি ব্যবহার করে books.xml XML পার্সারে লোড করে এবং প্রথম বুকের তথ্য দেখানো হয়
xmlDoc=loadXMLDoc("books.xml"); document.write(xmlDoc.getElementsByTagName("title")) [0].childNodes[0].nodeValue); document.write("<br />"); document.write(xmlDoc.getElementsByTagName("author")) [0].childNodes[0].nodeValue); document.write("<br />"); document.write(xmlDoc.getElementsByTagName("year")) [0].childNodes[0].nodeValue);
আউটপুট:
Harry Potter J K. Rowling 2005
উপরোক্ত উদাহরণে, আমরা প্রত্যেকটি টেক্সট নোডকে childNodes[0] ব্যবহার করি, যদিও প্রত্যেক ইলেকট্রনমুখে একটি টেক্সট নোড আছে। এটা কারণ কিনা যে getElementsByTagName() মথুরা সবসময় একটি আইন্দ্রণ ফিরায়
XML স্ট্রিং পার্স - ক্রস ব্রাউজার ইনস্ট্যান্স
নিচের কোডটি একটি XML স্ট্রিং লোড এবং পার্স করে
এই কোড স্প্লিন্টটি loadXMLString ফাংশনটি ব্যবহার করে books.xml XML পার্সার লোড করুন এবং প্রথম বুকের ডাটা দেখান
text="<bookstore>" text=text+"<book>"; text=text+"<title>Harry Potter</title>"; text=text+"<author>J K. Rowling</author>"; text=text+"<year>2005</year>"; text=text+"</book>"; text=text+"</bookstore>"; xmlDoc=loadXMLString(text); document.write(xmlDoc.getElementsByTagName("title")) [0].childNodes[0].nodeValue); document.write("<br />"); document.write(xmlDoc.getElementsByTagName("author")) [0].childNodes[0].nodeValue); document.write("<br />"); document.write(xmlDoc.getElementsByTagName("year")) [0].childNodes[0].nodeValue);
আউটপুট:
Harry Potter J K. Rowling 2005
- পূর্ববর্তী পৃষ্ঠা DOM লোড
- পরবর্তী পৃষ্ঠা DOM এক্সেস নোড