Ajax Request mit prototype funktioniert nicht bei Firefox, dafür bei IE

nosilume

Erfahrenes Mitglied
Guten Abend !
Ich habe ein kleines Problem mit einem Script von mir, nämlich dem hier:
PHP:
function getWeather() {
	var service = 'http://ws.geonames.org/weatherIcaoJSON';
	var params = 'ICAO=' + $F('airport_code');
	
	// debugger;
	
	try {
		var myAjax = new Ajax.Request(
			service, 
			{
				method: 'get',
				parameters: params,
				onComplete: function (request) {
					alert (request.responseText);
				}
			}
		);
	} catch (e) {
		alert (e);
	}
}

Und das ist das zugehörige Formular:
HTML:
<div id="formular">
<label for="airport_code">ICAO Code</label><input type="text" name="cccc" id="airport_code" value="LOWW"></input><br />
<input type="submit" value="Wetter holen" onClick="getWeather()">
</div>

Im IE funktioniert das dieses Script einwandfrei, in Mozilla funktioniert offenbar das initialisieren des Ajax Objektes nicht. Ich habe es mit Firebug getestet, bis zu //debugger; funktioniert es prächtig :)

Ich hoffe jemand kann mir bei meinem Problem helfen und wünsche noch einen schönen Abend.
 
Zuletzt bearbeitet:
Das bringt leider auch nicht die erhofft Wirkung. Die Daten werden eh korrekt abgefragt und vom Server kommt (im IE 7) auch eine Antwort. Der Fehler liegt bei Firefox.
 
Läuft das Skript denn auch unter http://ws.geonames.org/ ?

Sorry, was meinst du damit ?

Ich habe im IE die Sicherheitseinstellungen ändern müssen, damit nicht dauernd dieser lästige Balken erscheint. Aber ich dachte immer das das im Firefox nicht notwendig wäre.

Edit:
Ich habe das Script jetzt auch in Firefox halbwegs zum Funktionieren gebracht. Halbwegs, weil es noch immer nicht funktioniert. Hier ist mal ein Screenshot von der Firebug Ausgabe des myAjax Objektes:
firebugoq0.jpg

Was sollte mir das jetzt sagen ^^ ? Ich bin in prototype (und Javascript im Allgemeinen) nicht so gebildet...
 
Zuletzt bearbeitet:
Sorry, was meinst du damit ?

Ich habe im IE die Sicherheitseinstellungen ändern müssen, damit nicht dauernd dieser lästige Balken erscheint. Aber ich dachte immer das das im Firefox nicht notwendig wäre.

Da hast du leider falsch gedacht:(
Da du nicht davon ausgehen kannst, dass jemand für dich die Sicherheitseinstellungen des Browsers änderst, musst du davon ausgehen, dass dies so nicht klappen wird.

Da du PHP bei dir verfügbar hast, wie ich glaube, könntest du einen Umweg gehen, der ohne Änderungen am Browser funktioniert:
Anstatt direkt bei http://ws.geonames.org/weatherIcaoJSON anzufragen, sende deinen Request an ein eigenes PHP-Skript.
Selbiges leitet die Anfrage dann weiter und gibt die Antwort zurück.

Der Unterschied: anfragende und angefragte Ressource liegen somit auf derselben Domain...keine Probleme mit den Sicherheitseinstellungen :)
 
Zurück