XML DOM Tarin Ilimi

Kwani DOM shi ne?

DOM za fadamarin kan fagantawa da kada kada dokoki:

"W3C Dokoki Manajan Mutum (DOM) shi ne hanyar da ta kama tsammanin tsammanin da yake fahimtarin kwaya da kuma kwayar, da ya amincin kwayar da ke fahimtarin kwayar, kwayar, da kuma kwayar. "

HTML DOM za fadamarin sabonin kan fagantawa da kada kada HTML. Wanda ya kara kara dokoki HTML a matsayin tukuru.

XML DOM za fadamarin sabonin kan fagantawa da kada kada XML. Wanda ya kara kara dokoki XML a matsayin tukuru.

For kowa ce taamaka HTML tamananin XML, fahimtarin DOM za kara.

HTML DOM

Ayyuka dama za ayyuka HTML zaiya za iya an fagantawa DOM.

example 1

hukuntar da a kaiwa ga HTML elements da id="demo":

<h1 id="demo">hukuntar da "Hello World!"
<script>
document.getElementById("demo").innerHTML = "Hello World!";
</script>

Sai dai farin koyarwa

example 2

hukuntar da a kaiwa ga kalmomin farko <h1> elements a cikin HTML document:

<h1>hukuntar da "Hello World!"
<h1>hukuntar da "Hello World!"
<script>
document.getElementsByTagName("h1")[0].innerHTML = "Hello World!";
</script>

Sai dai farin koyarwa

shaidar:dahsan: kama HTML document na iya da kawai <h1> element, kuma an ba da azaman array index [0], saboda getElementsByTagName() method ne ya samar da array kowane lokaci.

za a iya koyar da karin bayanin HTML DOM a cikin tutorial nke JavaScript nke nke.

XML DOM

kowane XML elements zai iya samun ta amfani da XML DOM.

XML DOM shi ne:

  • XML standard object model
  • XML standard programming interface
  • kuma yana da iyaka da kowane platforma da harshe
  • W3C standards

dahsan: XML DOM shi ne kan siffar amfani da samun, sa ido, koma ko kaiwa XML elements.

ka amfani da XML elements

hukuntar da a fahimtar kalmomin <title> na farko a cikin XML document:

Duba

txt = xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;

ka amfani da XML files

kafin da a fiwa ga XML da a yi amfani da shi a cikin kowace hukuntar na amfani da XML files shine books.xml.

hukuntar da "books.xml" a kaiwa ga xmlDoc kuma fahimtar kalmomin <title> a kaiwa ga "books.xml":

Duba

<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
    myFunction(this);
    }
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
    var xmlDoc = xml.responseXML;
    document.getElementById("demo").innerHTML =
    xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
}
</script>
</body>
</html>

Sai dai farin koyarwa

Tasiri na shi

  1. xmlDoc - Bayan bayan XML DOM na ana kama da koyarwari
  2. getElementsByTagName("title")[0] - Sami farko na <title> bayan bayan
  3. childNodes[0] - Bayan bayan farko na <title> (bayan bayan)
  4. nodeValue - Wuri na bayan bayan (ayyana bayan bayan)

Kama bayan XML

Duba wannan shi ne kuma yana koyar da cewa za a kama bayan bayan XML DOM daga bayan bayan text, da kuma samun bayan bayan da a kama da JavaScript:

Duba

<html>
<body>
<p id="demo"></p>
<script>
var text, parser, xmlDoc;
text = "<bookstore><book>"
"<title>雅舍谈吃</title>" +
"<author>梁实秋</author>" +
"<year>2013</year>" +
"</book></bookstore>";
parser = new DOMParser();
xmlDoc = parser.parseFromString(text,"text/xml");
document.getElementById("demo").innerHTML =
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
</script>
</body>
</html>

Sai dai farin koyarwa

Farin koyarwa

Bayan bayan koyarwa

Bayan bayan DOM na koyarwa yana da bayan bayan kaiwarta da harsuna da harsuna na kaiwarta.

Bayan bayanAn haife ne kuma yana nufin shi ne kuma za a samu (tun da "nodename" na "book".).

HarsunaAn haife ne kuma yana nufin shi da za a samu (tun da a bai "book" ba.).

Bayan bayan XML DOM

Wannan da sukan bayan bayan DOM:

  • x.nodeName - sunan x
  • x.nodeValue - wuri x
  • x.parentNode - bayan bayan x
  • x.childNodes - bayan bayan x
  • x.attributes - bayan bayan x

Note:A baiyowa da abin da baiyowa na "x" wani karee na bayan bayan.

XML DOM Methods

  • x.getElementsByTagName(name) - Get all elements with a specified tag name
  • x.appendChild(node) - Insert a child node into x
  • x.removeChild(node) - Remove child nodes from x

Note:In the above list,x Is a node object.