jQuery के $(xmlString) से XML पार्स करें, फिर .attr() या .find() से एट्रिब्यूट्स/एलिमेंट्स एक्सेस करें।
jQuery के साथ XML पार्सिंग
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
// XML स्ट्रिंग
var xmlString = '<Game id="101" details="Play the game and win the amount">'
+ '<gameName name="Cricket" content="/localhost/content/game/play/" />'
+ '<gameName name="Tennis" content="/localhost/game/all/scratch/" />'
+ '</Game>';
// jQuery ऑब्जेक्ट में पार्स करें
var $xml = $(xmlString);
// रूट एट्रिब्यूट प्राप्त करें
console.log("Game ID:", $xml.attr("id")); // "101"
console.log("Details:", $xml.attr("details")); // "Play the game..."
// चाइल्ड एलिमेंट्स ढूंढें
var $gameNames = $xml.find("gameName");
$gameNames.each(function() {
console.log("Name:", $(this).attr("name"));
console.log("Content:", $(this).attr("content"));
});
</script>
वेनिला JavaScript (बिना jQuery)
const xmlString = `<Game id="101" details="Play and win">
<gameName name="Cricket" content="/play/" />
<gameName name="Tennis" content="/scratch/" />
</Game>`;
// DOMParser से पार्स करें
const parser = new DOMParser();
const xmlDoc = parser.parseFromString(xmlString, "text/xml");
// रूट एट्रिब्यूट
console.log("ID:", xmlDoc.documentElement.getAttribute("id"));
// सभी gameName एलिमेंट्स
const gameNames = xmlDoc.getElementsByTagName("gameName");
for (let elem of gameNames) {
console.log("Name:", elem.getAttribute("name"));
console.log("Content:", elem.getAttribute("content"));
}
// XPath के साथ (जटिल क्वेरीज के लिए)
const cricket = xmlDoc.evaluate(
'//gameName[@name="Cricket"]',
xmlDoc, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null
).singleNodeValue;
if (cricket) console.log("Cricket content:", cricket.getAttribute("content"));
एरर हैंडलिंग
function parseXMLSafely(xmlString) {
try {
const parser = new DOMParser();
const xmlDoc = parser.parseFromString(xmlString, "text/xml");
// पार्स एरर जांचें
const parserError = xmlDoc.getElementsByTagName("parsererror");
if (parserError.length > 0) {
throw new Error("XML पार्स एरर: " + parserError[0].textContent);
}
return xmlDoc;
} catch (error) {
console.error("XML पार्स विफल:", error);
return null;
}
}
चलाने का तरीका
HTML फ़ाइल में jQuery शामिल करके ब्राउज़र में खोलें, या Node.js में xmldom पैकेज के साथ चलाएं।
आउटपुट
Game ID: 101
Details: Play the game and win the amount
Name: Cricket
Content: /localhost/content/game/play/
Name: Tennis
Content: /localhost/game/all/scratch/
महत्वपूर्ण नोट्स
- XML केस-सेंसिटिव है (
gameName≠GameName) - सेल्फ-क्लोजिंग टैग्स
/>से समाप्त होने चाहिए - jQuery का
$(xmlString)केवल अच्छी तरह से बने XML के लिए काम करता है - Node.js में
npm install xmldomफिरconst { DOMParser } = require('xmldom')