خصائص childNodes DOM XML
التعريف والاستخدام
childNodes
الخاصية تعود NodeList يحتوي على العناصر الفرعية للعنصر المحدد.
إذا لم يكن العنصر المحدد يحتوي على عناصر فرعية، فإن هذه الخاصية تعود NodeList لا يحتوي على العناصر.
نصيحة:للتحقق من قائمة childNodes، استخدم خاصية nextSibling بدلاً من استخدام قائمة childNodes للشكل الأب بفعالية أكبر.
النحو
elementNode.childNodes
مثال
مثال 1
السطر التالي يقوم بتحميل "books.xml" إلى xmlDoc، و من "books.xml" الحصول على النص من العنصر الأول <title>:
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; var x = xmlDoc.getElementsByTagName("title")[0]; var y = x.childNodes[0]; document.getElementById("demo").innerHTML = y.nodeValue; }
مثال 2
السطر التالي يقوم بتحميل "books.xml" إلى xmlDoc، و من "books.xml" الحصول على عدد العناصر الفعلية من العنصر الأول <book>: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; var x = xmlDoc.getElementsByTagName("book")[0].childNodes; document.getElementById("demo").innerHTML = x.length; }
Firefox 和大多数其他浏览器会将空白或换行视为文本节点,而 Internet Explorer 不会。因此,在上面的例子中,输出将会有所不同。
如需了解有关浏览器之间差异的更多信息,请访问 XML DOM 教程中的 DOM 浏览器章节。