Mangali wa Mtafiti wa XML DOM

Wengine wengi wa browser wana uharibifu wengine katika uharibifu wa mabaki ya text katika XML DOM.

Mfano

Mfano hii inatumia faili ya XML books.xml.

Funguo loadXMLDoc(), iliyopo nje ya JavaScript, inaingia faili ya XML.

Inonyesha ukubwa wa orodha ya mabaki
Mfano hii inonyesha ukubwa wa orodha ya mabaki. Inafikia kwa sababu ya IE na browser zingine zina uharibifu.
Kumaliza maelezo ya kifungu kati ya maelezo
Mfano hii inakisia matokeo ya nodeType wa mabaki, na inakubali mabaki ya kina tu.

Matokeo ya browser kati ya DOM

Wote wa browser zaidi zinaongea na mawendo ya W3C DOM.

Inafikia kwa sababu kati ya browser zaidi zina uharibifu. Matokeo muhimu yana kumi:

  • Mifano ya kuingia katika XML
  • Mifano ya kuhifadhi kipofu na kifungu

KwenyeKuandaa Mabaki ya XML DOMSehemu hii, inaeleza mifano ya kuingia katika XML.

Kwenye sehemu hii, tutafungua habari zaidi kuhusu mifano ya kuhifadhi kipofu na kifungu.

DOM - Kipofu na kifungu

XML ina kumekadiri kipofu kipofu kati ya mabaki. Hii inaonekana kwa sababu ya kufanya kwa mabaki ya kichwa (kama kichwa cha kuzingatia).

Mfano hii (kuwa na mabaki ya kichwa na kifungu) ina CR/LF kati ya ukurasa, kwa sababu ya mabaki ya kipofu kati ya mabaki ya kina:

<book>
  <title>Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>

Firefox, na kwa browser zingine zaidi, zinaandaa kipindi kipakoei kipofu au kipofu cha kifungu kama mwingine waandiko, lakini Internet Explorer hawafanyi hivyo.

Maktaba ya kifungu ya kina ya (books.xml) inaonyesha nafasi ya maelezo wa mwanafunzi:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.documentElement.childNodes;
document.write("Number of child nodes: " + x.length);

Matokeo wa mtafiti:

  • Kutumia loadXMLDoc() Kuandika "books.xml" kuingia kwenye xmlDoc
  • Pata maelezo wa mwanafunzi wa kina
  • Kutoa matokeo wa maelezo wa mwanafunzi

Matokeo yanatokea kwa kawaida kwa kifungu cha kifungu. Firefox inatoa 9, na IE inatoa 4.

TIY

Kumaliza maelezo ya kifungu kati ya maelezo

Kuwa na kumaliza maelezo ya kifungu kati ya maelezo ya kifungu, tafadhali tazama aina ya maelezo. Aina ya maelezo ya kifungu ni 1:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.documentElement.childNodes;
for (i=0;i<x.length;i++)
{ 
if (x[i].nodeType==1)
  {// only process element nodes 
  document.write(x[i].nodeName);
  document.write("<br />");
  } 
}

Matokeo wa mtafiti:

  • Kutumia loadXMLDoc() Kuandika "books.xml" kuingia kwenye xmlDoc
  • Pata maelezo wa mwanafunzi wa kina
  • Tumia maelezo wa kila maelezo wa mwanafunzi. Ikiwa aina ya maelezo ni "1", ni maelezo wa kifungu

TIY (rahisi) au TIY (kamilifu)