Pages

Showing posts with label javascript. Show all posts
Showing posts with label javascript. Show all posts

Friday, December 7, 2012

Validate XML in Java Script

Below is the function to validate the XML's. This function will return 'true' if it is a valid XML, else will return 'false'.

----------------------------------------------------------------
var msgError = "", isValidNode = 1;
function checkErrorXML(xml) {
 msgError = "";
 isValidNode = 1;
 checkXML(xml);
}

function checkXML(node) {
 var l, i, nam;
 nam = node.nodeName;
 if (nam == "h3") {
  if (isValidNode == 0) {
   return;
  }
  isValidNode = 0;
 }
 if (nam == "#text") {
  msgError = msgError + node.nodeValue + "\n";
 }
 l = node.childNodes.length;
 for (i = 0; i < l; i++) {
  checkXML(node.childNodes[i]);
 }
}

function validateXML(inputXml) {
 
 var returnFlag = true;
 
 // Validate in IE
 if (window.ActiveXObject) {
  var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
  xmlDoc.async = false;
  xmlDoc.loadXML(document.all(inputXml).value);

  if (xmlDoc.parseError.errorCode != 0) {
   returnFlag = false;
  } else {
   returnFlag = true;
  }
 }

 // Validate in Mozilla, Firefox, Opera, etc.
 else if (document.implementation.createDocument) {
  var parser = new DOMParser();
  var text = document.getElementById(inputXml).value;
  var xmlDoc = parser.parseFromString(text, "text/xml");

  if (xmlDoc.getElementsByTagName("parsererror").length > 0) {
   checkErrorXML(xmlDoc.getElementsByTagName("parsererror")[0]);

   returnFlag = false;
  } else {
   returnFlag = true;
  }
 } else {
  //No Browser Support
  returnFlag = false;
 }
 
 return returnFlag;
}