Anche io avevo lo stesso problema ma ora l'ho risolto!

Siccome i deficenti della microsoft con IE 7 hanno deciso di adeguarsi allo standard nella versione 7 hanno introdotto anche loro l'oggetto XMLHttpRequest. il problema è che il LORO oggetto non funziona in locale. Quindi quando andate a fare il controllo per il tipo di oggetto dovete fare

codice:
try{
	// la versione 6 di IE ha un nome differente per il tipo di oggetto ActiveX
	return (new ActiveXObject("MSXML2.XMLHTTP"))
     }
	catch(err)
	{
		try{
			// le versioni 5 e 5.5 invece sfruttano lo stesso nome
			return (new ActiveXObject("Microsoft.XMLHTTP"))
		}
		catch(err)
			{
			try{
				if (window.XMLHttpRequest) // Mozilla, Safari,...
				{
					req = new XMLHttpRequest();
					if (req.overrideMimeType)
						req.overrideMimeType('text/xml');
					return req;
				}
			}
			catch(err){
					// il browser non lo  supporta
					return null
				}
		}
}
facendo invece prima il controllo per XMLHttpRequest su IE 7 vi dice che c'è ma quando carichiamo in locale ci nega l'accesso!
Adesso telefono a Bill...