Tach spross,
ich möchte gerne aus folgendem string:
"<?xml version="1.0"?><asp><ErrorCode>3</ErrorCode><ErrorDescription>Authorization failed</ErrorDescription></asp>"
Den Inhalt zwischen <ErrorCode></ErrorCode> und <ErrorDescription></ErrorDescription> auslesen. ist das mit regex oder so nicht ziemlich einfach? leider weiss ich überhaupt nicht wie ich mit regex umgehen muss.
Würde ich nicht als erste Wahl ansehen.
Liegt evtl. bereits ein DOM-Objekt (aus einem XMLHttpRequest) vor? Dann gleich mittels DOM-Methoden rangehen oder aus dem String zunächst ein DOM-Objekt erzeugen:
var xmldoc=null, xmlstr='<?xml version="1.0"?><asp><ErrorCode>3</ErrorCode><ErrorDescription>Authorization failed</ErrorDescription></asp>';
if(window.ActiveXObject)
{
xmldoc=new ActiveXObject("Microsoft.XMLDOM");
xmldoc.loadXML(xmlstr);
}
else if(window.DOMParser)
{
var xmldoc=(new DOMParser()).parseFromString(xmlstr,"text/xml");
}
if(xmldoc)
{
var ErrorCode=xmldoc.getElementsByTagName("ErrorCode").item(0).firstChild.nodeValue;
var ErrorDescription=xmldoc.getElementsByTagName("ErrorDescription").item(0).firstChild.nodeValue;
alert("ErrorCode: "+ErrorCode+"\nErrorDescription: "+ErrorDescription);
}
else alert("XML-Objekt konnte nicht erzeugt werden.");
Man liest sich,
svg4you