Script geht im FireFox / IE und Freunde spinnen...

NetBull

Erfahrenes Mitglied
Hi,

nachdem ich endlich eine Lösung gefunden habe wie man im IE debugged, erschliesst sich mir der Fehler nicht, bzw. wie man Fehler dieser Art abfängt.

Es geht um das Verarbeiten von XML aus einem AjaxRequest.

Sie sieht das XML node aus:
Code:
<root>
    <singleValue>
        <name>ersterWert</name>
        <value>100</value>
    </singleValue>
<root>

Im FireFox führt dieser Code zum Erfolg um das RootNode zu lesen:
Code:
this.getRootNode = function()
{
	var root=null;		
	try
	{
		root = (xmlResponse.getElementsByTagName('root'))[0];
		if(root==null)
			internalErrors.push("missing root node");
	}
	catch(e)
	{
		this.internalErrors.push(e);
	}
	finally
	{
		return root;
	}
}

und dieser um das Valu
Code:
this.getValueNodes = function()
{	
	var mValues = null;
	try
	{
		var mRoot = this.getRootNode();		
		if( mRoot != null)
			var mValues = mRoot.getElementsByTagName("singleValue");
	}
	catch(e)
	{
		this.internalErrors.push(e);
	}
	finally
	{
		return mValues;
	}
}

und diese Konstruktion liefert den Wert zurück dessen Name gesucht wird:
Code:
this.getValueByName = function(aName)
{
	var mRetVat = null;
	try
	{	
		var values = this.getValueNodes();	
		if( values != null)
		{
			if( values!=null )
			{
				for(i=0;i<values.length;i++)
				{						
					mName = ( ( values[i].getElementsByTagName("name") )[0] ).textContent;
					if(mName==aName)
						mRetVat = ( ( values[i].getElementsByTagName("value") )[0] ).textContent;
				}						
			}
		}
	}
	catch(e)
	{
		this.internalErrors.push(e);
	}
	finally
	{
		return mRetVat;
	}
}

In FireFox, Chrome, Safari und Opera geht es. Nur IE spinnt rum und das Objekt wird als null zurückgegeben.

Im XML Object wird unter item unzulässige Parameteranzahl ausgegeben.
Ich hab mal ein Screenshot von der Situation im Debugger gemacht, ....

screenShot.jpg

Wäre cool wenn mir das mal jemand erläutern könnte, was ich da für den IE falsch mache.

cu s00n
deAndro!
 
hab das XML mal abgespeckt:
Code:
<?xml version='1.0' encoding='UTF-8'?><root><error>test-fehler</error></root>

Der Fehler ist immer noch der Gleiche, ich kann echt nicht nachvollziehen was der IE für ein Problem hat. Alle anderen Browser arbeiten sauber damit...
 

Neue Beiträge

Zurück