xml - Get the full path of a node, after get it with an XPath query in JavaScript -


मेरे पास जावास्क्रिप्ट में अगला निर्देश है:

  var firstScene = document.evaluate ( '// दृश्य', दस्तावेज़, रिक्त, XPathResult.FIRST_ORDERED_NODE_TYPE, रिक्त);  

तो मेरा सवाल है कि नोड प्रथमससीन का पूरा रास्ता कैसे प्राप्त करें

इसका उपयोग करना:

  फ़ंक्शन getXPath (नोड, पथ) {path = path || []; If (node.parentNode) {path = getXPath (node.parentNode, पथ); } If (node.previousSibling) {var count = 1; Var sibling = node.previousSibling do {if (sibling.nodeType == 1 & amp; amp; sibling.nodeName == node.nodeName} {count ++;} sibling = sibling.previousSibling; } जबकि (भाई); यदि (गणना == 1) {count = null;}} और अगर (नोड। न्यूक्स्ट सिबलिंग) {var sibling = node.next सिबलिंग; करें {if (sibling.nodeType == 1 & amp; amp; sibling.nodeName == node.nodeName} {var संख्या = 1; भाई = नल; } Else {var count = null; भाई-बहन = भाई। पूर्ववर्ती सिबलिंग; }} जबकि (भाई); } If (node.nodeType == 1) {path.push (node.nodeName.LowCase () + (node.id? "[@id = '" + node.id + "']": गणना और gt; 0? " ["+ गणना +"] ": '')); }     वापसी का पथ; };  

getXPath () विधि से firstScene.iterateNext () से प्राप्त DOM ऑब्जेक्ट पास करें और यह सभी के साथ एक सरणी वापस करेगा XPATH चरणों का

आप एक पूर्ण XPATH अभिव्यक्ति वापस करने के लिए सरणी join () विधि का उपयोग कर सकते हैं:

  getXPath (firstScene.iterateNext ())। में शामिल होने के ( "/");  

Comments