دسترسی به مقادیر گرههای XML DOM
- صفحه قبلی محلیابی گرههای DOM
- صفحه بعدی تغییر گرههای DOM
ویژگی nodeValue برای دریافت ارزش متن گره استفاده میشود.
مетод getAttribute() ارزش ویژگی را برمیگرداند.
مثال
مثال زیر از فایل XML استفاده میکند: books.xml.
وظیفه loadXMLDoc()، در خارج از JavaScript، برای بارگذاری فایل XML استفاده میشود.
- دسترسی به ارزش عنصر
- در این مثال از روش getElementsByTagname() برای دریافت اولین عنصر <title> در "books.xml" استفاده میشود.
- دسترسی به ارزش ویژگی
- در این مثال از روش getAttribute() برای دریافت ارزش ویژگی "lang" اولین عنصر <title> در "books.xml" استفاده میشود.
دسترسی به ارزش عنصر
در DOM، هر عنصر یک گره هستند. گرههای عنصر دارای ارزش متن نیستند.
متن گره عنصر در گرههای فرزند ذخیره میشود. این گره به عنوان گره متن شناخته میشود.
روش دسترسی به متن عنصر، دریافت ارزش این گره فرزند (گره متن) است.
دسترسی به ارزش عنصر
ویژگی getElementsByTagName() لیستی از گرههایی که دارای نام برچسب مشخصی هستند را برمیگرداند، که ترتیب گرهها بر اساس ترتیب ظاهر شدن در مستند منبع است.
کد زیر با استفاده از loadXMLDoc() مقیاس "books.xmlدر xmlDoc قرار میگیرد و اولین عنصر <title> را جستجو میکند:
xmlDoc=loadXMLDoc("books.xml"); x = xmlDoc.getElementsByTagName("title")[0];
ویژگی childNodes لیستی از گرههای فرزند را برمیگرداند.<title> عنصر فقط یک گره فرزند دارد، یعنی یک گره متن.
کد زیر برای جستجوی گره متن <title> انجام میشود:
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0];
ویژگی nodeValue ارزش متن گره متن را برمیگرداند:
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0]; txt = y.nodeValue;
نتیجه: txt = "Harry Potter"
بازدید از تمام <title> عناصر:TIY
دسترسی به ارزش ویژگی
در DOM، ویژگیها نیز گره هستند. برخلاف گرههای عنصر، گرههای ویژگی دارای ارزش متن هستند.
روش دسترسی به ارزش ویژگی، دریافت ارزش متن آن است.
این کار میتواند با استفاده از روش getAttribute() یا ویژگی nodeValue یکتای گره انجام شود.
دسترسی به ارزش ویژگی - getAttribute()
مетод getAttribute() ارزش ویژگی را برمیگرداند.
کد زیر برای جستجوی متن ارزش "lang" ویژگی <title> اولین عنصر انجام میشود:
xmlDoc=loadXMLDoc("books.xml"); txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");
نتیجهگیری: txt = "en"
توضیح مثال:
- با استفاده از loadXMLDoc() مقیاس "books.xmlدر xmlDoc بارگذاری کنید
- مقیاس متغیر txt را به مقیاس ویژگی اولین گره <title> قرار دهید
تمام <book> عناصر را بررسی کنید و مقیاس آنها را دریافت کنید:TIY
دسترسی به مقیاس ویژگی - getAttributeNode()
getAttributeNode() روشی برای بازگشت گره ویژگی است.
کد زیر برای جستجوی مقیاس متنویسی "lang" اولین <title> است:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].getAttributeNode("lang"); txt=x.nodeValue;
نتیجهگیری: txt = "en"
توضیح مثال:
- با استفاده از loadXMLDoc() مقیاس "books.xmlدر xmlDoc بارگذاری کنید
- مقیاس ویژگی "lang" گره اولین <title> را دریافت کنید
- مقیاس متغیر txt را به مقیاس ویژگی قرار دهید
تمام <book> عناصر را به چرخش درآورید و مقیاس آنها را دریافت کنید:TIY
- صفحه قبلی محلیابی گرههای DOM
- صفحه بعدی تغییر گرههای DOM