XML DOM నోడ్ నిర్ణయం
- ముంది పేజీ DOM నోడ్ వ్రాతించడం
- తరువాతి పేజీ DOM నోడ్ పొందడం
可通过使用节点间的关系对节点进行定位。
定位 DOM 节点
通过节点之间的关系来访问节点树中的节点,通常被称为“定位节点”(或导航节点,navigating nodes)。
ఎక్సిఎమ్ఎల్ డామ్లో నోడ్ సంబంధాలు నోడ్ యాత్రాంశాల ద్వారా నిర్వచించబడినవి:
parentNode
childNodes
firstChild
lastChild
nextSibling
previousSibling
దిగువ చిత్రం చూపిస్తుంది: books.xml నోడ్ ముడిపరిగణణలలో ఒక భాగంగా మరియు నోడ్ సంబంధాలను వివరించబడింది:

DOM - పైభాగం
అన్ని నోడ్లు ఒక మాత్రపు పైభాగాన్ని కలిగి ఉంటాయి. దిగువ కోడ్ క్రింది <book> పైభాగానికి పరిగణించబడుతుంది:
ఉదాహరణ
function myFunction(xml) { var xmlDoc = xml.responseXML; var x = xmlDoc.getElementsByTagName("book")[0]; document.getElementById("demo").innerHTML = x.parentNode.nodeName; }
ఉదాహరణ వివరణలు:
- సమానంగా ఉండండి books.xml లోకి లోడ్ చేయండి
xmlDoc
లో - మొదటి <book> ఎలిమెంట్ ను పొందండి
- x పైభాగం నోడ్ నోడ్ పేరు ఉచ్చారణ చేయండి
ఖాళీ టెక్స్ట్ నోడ్ నివారించండి
కొన్ని బ్రావ్జర్లు ఖాళీ లేదా కాంతును టెక్స్ట్ నోడ్ విభాగాలుగా పరిగణించవచ్చు. ఇది క్రింది అనునాసికాలను వినియోగించటంలో సమస్యలకు కారణం కావచ్చు:
- firstChild
- lastChild
- nextSibling
- previousSibling
ముందుకు పరిగణించబడని టెక్స్ట్ నోడ్ విభాగాలను (అంతర్గత అక్షరాలు మరియు నీటికలను) అవినీతికి నివారించడానికి మేము ఫంక్షన్ ఒకదానిని వాడుతున్నాము:
function get_nextSibling(n) { var y = n.nextSibling; while (y.nodeType != 1) { y = y.nextSibling; } return y; }
పైన ఫంక్షన్స్ తో, మేము get_nextSibling(node) ను ఉపయోగించవచ్చు node.nextSibling అంశం బదులు.
కోడ్ వివరణలు:
అంశం నోడ్ రకం 1. సమాన అంశం అంశం కాదు ఉండాలి ఉంటే, ముంది అంశం వరకు జరిపించండి, వరకు అంశం పొందండి వరకు జరిపించండి.
మొదటి కింది అంశం పొందండి
క్రింది కోడ్ ద్వారా మొదటి <book> యొక్క మొదటి అంశం నోడ్ పొందండి:
ఉదాహరణ
<!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; var x = get_firstChild(xmlDoc.getElementsByTagName("book")[0]); document.getElementById("demo").innerHTML = x.nodeName; } // మొదటి నోడ్ అంశం కాదు ఉండాలి పరిశీలించండి function get_firstChild(n) { var y = n.firstChild; while (y.nodeType != 1) { y = y.nextSibling; } return y; } </script> </body> </html>
ఉదాహరణ వివరణలు:
- సమానంగా ఉండండి books.xml అది xmlDoc లోకి లోడ్ చేయండి
- మొదటి <book> అంశం నోడ్ పైన get_firstChild ఫంక్షన్స్ వాడండి మొదటి కింది అంశం నోడ్ పొందండి
- మొదటి కింది అంశం యొక్క నోడ్ పేరును అవుట్పుట్ చేయండి
మరిన్ని ఉదాహరణలు
- lastChild()
- ఉపయోగించండి lastChild() మరియు స్వంత ఫంక్షన్స్ ద్వారా నోడ్ యొక్క చివరి సంబంధిత కింది పద్ధతిని పొందండి。
- nextSibling()
- nextSibling() మరియు స్వంత ఫంక్షన్స్ ఉపయోగించి నోడ్ నెక్స్ట్ స్యాబ్లింగ్ పొందడానికి ఉపయోగించండి.
- previousSibling()
- previousSibling() మరియు స్వంత ఫంక్షన్స్ ఉపయోగించి నోడ్ ప్రివియస్ స్యాబ్లింగ్ పొందడానికి ఉపయోగించండి.
- ముంది పేజీ DOM నోడ్ వ్రాతించడం
- తరువాతి పేజీ DOM నోడ్ పొందడం