br**@koehn.com wrote:
I have an XMLDocument that my web page downloads and manipulates as a
response to user input. I have lots of JavaScript that acts as a
controller between my view (html) and my model (xml). That works fine.
Once the user's done editing, I want to send the modified XMLDocument
back up to my server (as XML). The problem is, I can't find a way to
use JavaScript to generate XML from an XMLDocument. Is there some
obvious API that I'm missing?
I think so, XMLHttpRequest in Mozilla browsers (Mozilla suite, Firefox,
Netscape 6/7), in latest Safari and Konqueror, and Microsoft.XMLHT TP in
IE 5/5.5/6 on Windows simply lets you pass in your XML document as a
parameter to the send method e.g.
var httpRequest;
if (typeof XMLHttpRequest != 'undefined') {
httpRequest = new XMLHttpRequest( );
}
else if (typeof ActiveXObject != 'undefined') {
httpRequest = new ActiveXObject(' Microsoft.XMLHT TP');
}
if (httpRequest) {
httpRequest.ope n('POST', 'XMLLoader.asp' , true);
httpRequest.onr eadystatechange = function (evt) {
if (httpRequest.re adyState == 4) {
if (httpRequest.st atus == 200) {
// process response here e.g.
// process httpRequest.res ponseXML
}
else .... handle other response status if needed
}
};
httpRequest.sen d(xmlDocument);
}
See
<http://www.faqts.com/knowledge_base/view.phtml/aid/17226/fid/616>
for details.
If you need to serialize an XML document to a string (that is not needed
for the above, XMLHttpRequest' s send method simply needs the document
object) then with MSXML there is the property named xml for DOM nodes thus
var xmlString = xmlDocument.xml ;
gives you the serialized XML as a string, with Mozilla you have
XMLSerializer e.g.
var xmlString = new XMLSerializer() .serializeToStr ing(xmlDocument );
--
Martin Honnen
http://JavaScript.FAQTs.com/