Nuestro team de especialistas luego de días de investigación y de juntar de datos, obtuvieron la respuesta, esperamos que te sea útil en tu trabajo.
Solución:
Descargo de responsabilidad: la siguiente respuesta asume que está utilizando el entorno JavaScript de un navegador web.
JavaScript maneja XML con ‘objetos DOM XML’. Puede obtener un objeto de este tipo de tres maneras:
1. Creación de un nuevo objeto DOM XML
var xmlDoc = document.implementation.createDocument(null, "books");
El primer argumento puede contener el URI del espacio de nombres del documento que se creará, si el documento pertenece a uno.
Fuente: https://developer.mozilla.org/en-US/docs/Web/API/DOMImplementation/createDocument
2. Obtener un archivo XML con XMLHttpRequest
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200)
var xmlDoc = xhttp.responseXML; //important to use responseXML here
xhttp.open("GET", "books.xml", true);
xhttp.send();
3. Analizando un string que contiene XML serializado
var xmlString = " ";
var parser = new DOMParser();
var xmlDoc = parser.parseFromString(xmlString, "text/xml"); //important to use "text/xml"
Cuando haya obtenido un objeto DOM XML, puede utilizar métodos para manipularlo como
var node = xmlDoc.createElement("heyHo");
var elements = xmlDoc.getElementsByTagName("root");
elements[0].appendChild(node);
Para obtener una referencia completa, consulte http://www.w3schools.com/xml/dom_intro.asp
Nota: Es importante que no utilice los métodos proporcionados por el espacio de nombres del documento, es decir
var node = document.createElement("Item");
Esto creará nodos HTML en lugar de nodos XML y dará como resultado un nodo con nombres de etiquetas en minúsculas. Los nombres de etiquetas XML distinguen entre mayúsculas y minúsculas en contraste con los nombres de etiquetas HTML.
Puede serializar objetos DOM XML como este:
var serializer = new XMLSerializer();
var xmlString = serializer.serializeToString(xmlDoc);
Considere que necesitamos crear el siguiente documento XML:
podemos escribir el siguiente código para generar el XML anterior
var doc = document.implementation.createDocument("", "", null);
var peopleElem = doc.createElement("people");
var personElem1 = doc.createElement("person");
personElem1.setAttribute("first-name", "eric");
personElem1.setAttribute("middle-initial", "h");
personElem1.setAttribute("last-name", "jung");
var addressElem1 = doc.createElement("address");
addressElem1.setAttribute("street", "321 south st");
addressElem1.setAttribute("city", "denver");
addressElem1.setAttribute("state", "co");
addressElem1.setAttribute("country", "usa");
personElem1.appendChild(addressElem1);
var addressElem2 = doc.createElement("address");
addressElem2.setAttribute("street", "123 main st");
addressElem2.setAttribute("city", "arlington");
addressElem2.setAttribute("state", "ma");
addressElem2.setAttribute("country", "usa");
personElem1.appendChild(addressElem2);
var personElem2 = doc.createElement("person");
personElem2.setAttribute("first-name", "jed");
personElem2.setAttribute("last-name", "brown");
var addressElem3 = doc.createElement("address");
addressElem3.setAttribute("street", "321 north st");
addressElem3.setAttribute("city", "atlanta");
addressElem3.setAttribute("state", "ga");
addressElem3.setAttribute("country", "usa");
personElem2.appendChild(addressElem3);
var addressElem4 = doc.createElement("address");
addressElem4.setAttribute("street", "123 west st");
addressElem4.setAttribute("city", "seattle");
addressElem4.setAttribute("state", "wa");
addressElem4.setAttribute("country", "usa");
personElem2.appendChild(addressElem4);
var addressElem5 = doc.createElement("address");
addressElem5.setAttribute("street", "321 south avenue");
addressElem5.setAttribute("city", "denver");
addressElem5.setAttribute("state", "co");
addressElem5.setAttribute("country", "usa");
personElem2.appendChild(addressElem5);
peopleElem.appendChild(personElem1);
peopleElem.appendChild(personElem2);
doc.appendChild(peopleElem);
Si es necesario escribir algún texto entre una etiqueta, podemos usar la propiedad innerHTML para lograrlo.
Ejemplo
elem = doc.createElement("Gender")
elem.innerHTML = "Male"
parent_elem.appendChild(elem)
Para obtener más detalles, siga el enlace a continuación. El ejemplo anterior se ha explicado allí con más detalle.
https://developer.mozilla.org/en-US/docs/Web/API/Document_object_model/How_to_create_a_DOM_tree
este trabajo para mi ..
var xml = parser.parseFromString(' ', "application/xml");
developer.mozilla.org/en-US/docs/Web/API/DOMParser
Te mostramos reseñas y valoraciones
Recuerda que te damos el privilegio añadir una valoración justa si te fue útil.