نود ليست XML DOM

ليست نود از روش getElementsByTagName() و خصوصيات childNodes برگردي.

مثال

مثال زير از فايل XML استفاد مي کنه books.xml.

فونکسيون loadXMLDoc()، جايگاه بيروني جاوا اسکريپت، براي بارگذاري فايل XML.

گرفتن متن از اولين علامت <title>
مثال کي از روش getElementsByTagName() براي گرفتن متن از اولين علامت <title> از "books.xml" استفاد مي کنه.
چرخش نود از طريق خصوصيات length
مثال کي از ليست نود و خصوصيات length براي چرخش همه علامت <title> از "books.xml" استفاد مي کنه.
گرفتن خصوصيات علامت
مثال کي از ليست خصوصيات براي گرفتن خصوصيات از اولين علامت <title> از "books.xml" استفاد مي کنه.

نود ليست DOM

وقتي از خصوصيات يا روشي مانند childNodes يا getElementsByTagName() استفاد مي کني، نموني NodeList برگردي.

نموني NodeList ليست نود، کي سي ترتيب يکسان با XML.

استعمال نمبر سمت چپ برای رسيدن به نود ليستي نود.

تصویر زیر نشان‌دهنده "books.xml"یک لیست گره از عناصر <title> است:

DOM نیو لسٹ

درج کئے گئے کوئی کد استعمال کے ذریعہ loadXMLDoc() books.xml را در xmlDoc بارگذاری کنید و "books.xml"یک لیست گره از عناصر title است:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title");

بعد از اجرای جمله بالا، x یک شی NodeList می‌شود.

کد زیر از اولین عنصر <title> در لیست گره‌ها x، متن را برمی‌گرداند:

txt=x[0].childNodes[0].nodeValue;

بعد از اجرای جمله بالا، txt = "Everyday Italian" است.

تی آئی آئی

طول لیست گره‌ها

اجسام NodeList خود را بروزرسانی می‌کنند. اگر عنصر حذف یا اضافه شود، لیست به طور خودکار بروزرسانی می‌شود.

پروپرتی length لیست گره‌ها تعداد گره‌ها در لیست است.

درج کئے گئے کوئی کد استعمال کے ذریعہ loadXMLDoc() بجائے "books.xml"documant.write("books.xml"، و تعداد عناصر <title> را برمی‌گرداند، و بارگذاری xmlDoc را انجام می‌دهد:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName('title').length;

بعد از اجرای جمله بالا، x = 4 است.

طول لیست گره‌ها می‌تواند برای جستجوی همه عناصر در لیست استفاده شود.

کد زیر از پروپرتی length برای جستجوی لیست عناصر <title> استفاده می‌کند:

xmlDoc=loadXMLDoc("books.xml");
//متغیر x یک لیست گره را نگه می‌دارد
x=xmlDoc.getElementsByTagName('title');
برای (i=0; i<x.length; i++)
{
document.write(x[i].childNodes[0].nodeValue);
document.write("<br />");
}

خارج کریں:

Harry Potter
Everyday Italian
XQuery Kick Start
Learning XML

مثال توضیح دیں:

  • استعمال کے ذریعہ loadXMLDoc() بجائے "books.xml"documant.write("<br />");"
  • متغیر x را برای لیست گره‌های همه عناصر title تنظیم می‌کند
  • مقدار خروجی از همه گره‌های متن <title> است

تی آئی آئی

DOM Attribute List (Named Node Map)

پروپرتی attributes یک گره عناصر، لیست گره‌های پروپرتی را برمی‌گرداند.

این به عنوان Named Node Map شناخته می‌شود، به جز تفاوت‌های کمی در روش‌ها و پروپرتی‌ها، آن شبیه لیست گره‌ها است.

پروپرتی لیست خود را بروزرسانی می‌کند. اگر پروپرتی حذف یا اضافه شود، این لیست به طور خودکار بروزرسانی می‌شود.

درج کئے گئے کوئی کد استعمال کے ذریعہ loadXMLDoc() بجائے "books.xml" xmlDoc میں لوڈ کریں، اور "books.xml" میں پہلے <book> نیود کو اپنے خاصیات کی نیود کی لسٹ کو باخبر کریں:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName('book')[0].attributes;

یہ کوئی کد چلنے کے بعد، x.length خاصیت کی تعداد کا ہوتا ہے، x.getNamedItem() کا استعمال کریں تاکہ اپنے اقدار کو حاصل کریں

درج کئے گئے کوڈ تیسرا <book> خاصیت کی اقدار اور اس کی خاصیت کی تعداد کو باخبر کرتی ہے:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("book")[0].attributes;
document.write(x.getNamedItem("category").nodeValue);
document.write("<br />" + x.length);

خارج کریں:

بچوں
1

مثال توضیح دیں:

  • استعمال کے ذریعہ loadXMLDoc() بجائے "books.xml" xmlDoc میں لوڈ کریں
  • x متغیر کو پہلے <book> نیود کی تمام خاصیات کی لسٹ کا ایک فہرست بنائیں
  • category خاصیت سے اپنے کی اقدار کو باخبر کریں
  • خود کی خاصیت کی لسٹ کی لمبائی کو باخبر کریں

تی آئی آئی