XML DOM insertBefore() পদ্ধতি
সংজ্ঞা ও ব্যবহার
insertBefore() পদ্ধতি নতুন সাব-নোডকে স্থাপিত সাব-নোডের আগে যোগ করতে পারে。
এই পদ্ধতি নতুন সাব-নোডকে ফিরিয়ে দেয়。
গ্রামাটিকা:
insertBefore(newchild,refchild)
পারামিটার | বর্ণনা |
---|---|
newchild | নতুন নোড যোগ করুন |
refchild | নতুন নোডটিকে এই নোডের আগে যোগ করুন |
টীকা ও মন্তব্য
মন্তব্য:Internet Explorer নোডের মধ্যে বহুল ব্যবহৃত স্বাচ্ছন্দ্য টেক্সট নোড (যেমন, লিন ফিকস), Mozilla একইভাবে না ব্যবহার করে। তাই, নিচের উদাহরণগুলিতে, আমরা একটি ফাংশন ব্যবহার করবো যাতে শেষ সাব-নোডের নোড টাইপ চেক করা যায়。
উপাদান নোডের নোড টাইপ 1 হয়েছে তাই যদি প্রথম সাব-নোড একটি উপাদান নোড না হয়, তবে তা পরবর্তী নোডে স্থানান্তরিত হবে, এবং এইভাবে এই নোডটিকে উপাদান নোড হলে পর্যন্ত তা চেক করা হবে। এই পদ্ধতিতেই আমরা Internet Explorer এবং Mozilla-তে সঠিক পদ্ধতি পাব।
টীকা:IE এবং Mozilla ব্রাউজারের XML DOM-এর মধ্যে পার্থক্য সম্পর্কে আরও তথ্য জানতে আমাদের ওয়েবসাইট সফর করুন DOM ব্রাউজার চাপ্তার
উদাহরণ
সমস্ত উদাহরণগুলিতে আমরা XML ফাইল ব্যবহার করব। books.xml، এবং JavaScript ফাংশন loadXMLDoc()}。
নিচের নিচের স্প্যান্ট একটি নতুন <book> নোড তৈরি করতে পারে এবং ডকুমেন্টের শেষ <book> ইলেকট্রনোডের আগে এই নোডটি যোগ করতে পারে:
//check if the last childnode is an element node
function get_lastchild(n)
{
var x=n.lastChild;
while (x.nodeType!=1)
{
x=x.previousSibling;
}
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var newNode=xmlDoc.createElement("book");
var newTitle=xmlDoc.createElement("title");
var newText=xmlDoc.createTextNode("A Notebook");
newTitle.appendChild(newText);
newNode.appendChild(newTitle);
xmlDoc.documentElement.insertBefore(newNode,get_lastchild(x));