jQuery addClass example
Change class name on click in jQuery
by Dmitri Ganenco
HTML
<pre id="pre"></pre>
JavaScript
var myObj = {
"Ob1": {
"myObjName": "A1",
"myObjType": "string",
"myObjOcc": "minOccurs=1",
"Ob2": {
"myObjName": "B1",
"myObjType": "string",
"myObjOcc": "minOccurs=1",
"Ob3": {
"myObjName": "C1",
"myObjType": "string",
"myObjOcc": "minOccurs=1"
}
}
},
"Ob4": {
"myObjName": "A2",
"myObjType": "string",
"myObjOcc": "minOccurs=1"
}
};
var simpleObjAttrs = ['myObjName', 'myObjType', 'myObjOcc'];
function hasNestedObject(obj) {
return Object.getOwnPropertyNames(obj).length > 3;
}
function xsdStructure(obj) {
var str = "";
if (hasNestedObject(obj)) {
str += "<xs:complexType name=\"" + obj.myObjName + "\" type=\"" + obj.myObjType + "\" " + obj.myObjOcc + ">\n";
for(var key in obj){
if(obj.hasOwnProperty(key) && simpleObjAttrs.indexOf(key) === -1){
str += xsdStructure(obj[key]);
}
}
str += "</xs:complexType>\n"
} else {
str = "<xs:simpleType name=\"" + obj.myObjName + "\" type=\"" + obj.myObjType + "\" " + obj.myObjOcc + "/>\n";
}
return str;
}
function printing(myObj) {
var result = "";
for (var key in myObj) {
result += xsdStructure(myObj[key]);
}
result = '<xs:schema>\n' + result + '</xs:schema>';
$('#pre').text(result);
return result;
}
formatXml( printing(myObj));
function formatXml(xml, tab) {
var formatted = '', indent= '';
tab = tab || '\t';
xml.split(/>\s*</).forEach(function(node) {
if (node.match( /^\/\w/ )) indent = indent.substring(tab.length); // decrease indent by one...