XML DOM Node List

½ÚµãÁбíÓÉ getElementsByTagName() ·½·¨ºÍ childNodes ÊôÐÔ·µ»Ø¡£

ʵÀý

ÏÂÃæµÄÀý×ÓʹÓà XML Îļþ books.xml¡£

º¯Êý loadXMLDoc()£¬Î»ÓÚÍⲿ JavaScript ÖУ¬ÓÃÓÚ¼ÓÔØ XML Îļþ¡£

´ÓµÚÒ»¸ö <title> ÔªËØ»ñÈ¡Îı¾
±¾ÀýʹÓà getElementsByTagName() ·½·¨´Ó "books.xml" ÖеĵÚÒ»¸ö <title> ÔªËØ»ñÈ¡Îı¾¡£
ͨ¹ýʹÓà length ÊôÐÔÀ´Ñ­»·½Úµã
±¾ÀýʹÓýڵãÁбíºÍ length ÊôÐÔÀ´Ñ­»· "books.xml" ÖеÄËùÓÐ <title> ÔªËØ¡£
»ñÈ¡ÔªËØµÄÊôÐÔ
±¾ÀýʹÓÃÊôÐÔÁбí´Ó "books.xml" ÖеĵÚÒ»¸ö <title> ÔªËØ»ñÈ¡ÊôÐÔ¡£

DOM Node List

µ±Ê¹ÓÃÖîÈç childNodes »ò getElementsByTagName() ÊôÐÔ»ò·½·¨Ê±£¬»á·µ»Ø NodeList ¶ÔÏó¡£

NodeList ¶ÔÏó±íʾ½ÚµãµÄÁÐ±í£¬ÒÔ XML ÖеÄÏàͬ˳Ðò¡£

ʹÓÃ´Ó 0 ¿ªÊ¼µÄϱêÀ´·ÃÎʽڵãÁбíÖеĽڵ㡣

ÏÂÃæµÄͼÏñ±íʾ "books.xml" ÖÐ <title> ÔªËØµÄ½ÚµãÁÐ±í£º

DOM node list

ÏÂÃæµÄ´úÂëÆ¬¶Îͨ¹ýʹÓà loadXMLDoc() °Ñ "books.xml" ÔØÈë xmlDoc ÖУ¬²¢·µ»Ø "books.xml" ÖÐ title ÔªËØµÄÒ»¸ö½ÚµãÁÐ±í£º

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title");

ÒÔÉÏÓï¾äÖ´ÐÐÖ®ºó£¬x ³ÉΪһ¸ö NodeList ¶ÔÏó¡£

ÏÂÃæµÄ´úÂëÆ¬¶Î´Ó½ÚµãÁбí x ÖеĵÚÒ»¸ö <title> ÔªËØÖзµ»ØÎı¾£º

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

ÔÚÒÔÉÏÓï¾äÖ´ÐÐÖ®ºó£¬txt = "Everyday Italian"¡£

TIY

Node List Length

NodeList ¶ÔÏó»á±£³Ö×ÔÉíµÄ¸üС£Èç¹ûɾ³ý»òÌí¼ÓÁËÔªËØ£¬Áбí»á×Ô¶¯¸üС£

½ÚµãÁбíµÄ length ÊôÐÔÊÇÁбíÖнڵãµÄÊýÁ¿¡£

ÏÂÃæµÄ´úÂëÆ¬¶Îͨ¹ýʹÓà loadXMLDoc() °Ñ "books.xml" ÔØÈë xmlDoc£¬²¢·µ»Ø "books.xml" ÖÐ <title> ÔªËØµÄÊýÁ¿£º

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName('title').length;

ÔÚÉÏÃæµÄÓï¾äÖ´ÐÐÖ®ºó£¬x = 4¡£

½ÚµãÁбíµÄ³¤¶È¿ÉÓÃÓÚÑ­»·ÁбíÖÐËùÓеÄÔªËØ¡£

ÏÂÃæµÄ´úÂëÆ¬¶ÎʹÓà length ÊôÐÔÀ´±éÀú <title> ÔªËØµÄÁÐ±í£º

xmlDoc=loadXMLDoc("books.xml");

//the x variable will hold a node list
x=xmlDoc.getElementsByTagName('title');

for (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" ÔØÈë xmlDoc
  • ÉèÖñ£´æËùÓÐ title ÔªËØµÄ½ÚµãÁбíµÄ x ±äÁ¿
  • ´ÓËùÓÐ <title> ÔªËØµÄÎı¾½ÚµãÊä³öÖµ

TIY

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 µÄ "category" ÊôÐÔµÄÖµ£¬ÒÔ¼°ÆäÊôÐÔµÄÊýÁ¿£º

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("book")[0].attributes;

document.write(x.getNamedItem("category").nodeValue);
document.write("<br />" + x.length);

Êä³ö£º

children
1

Àý×Ó½âÊÍ£º

  • ͨ¹ýʹÓà loadXMLDoc() °Ñ "books.xml" ÔØÈë xmlDoc ÖÐ
  • °Ñ x ±äÁ¿ÉèÖÃΪµÚÒ»¸ö <book> ÔªËØµÄËùÓÐÊôÐÔµÄÒ»¸öÁбí
  • ´Ó "category" ÊôÐÔÊä³öÆäÖµ
  • Êä³öÊôÐÔÁбíµÄ³¤¶È

TIY

VUE