in JavaScript-Funktion auf return warten

riseX

Mitglied
Hallo,

ich denke die Überschrift sagt alles aus .. ich habe eine JavaScript-Funktion, welche eine andere JS-Funktion aufruft. Die Erste soll nun irgendwie auf den Return-Wert warten. Hat da jemand eine Idee ... über die SuFu hab ich nix gefunden...

Gruß
vom riseX
 
ja ok .. ich habe mich ein wenig dämlich ausgegdrückt.

Das Problem ist, dass die 2. Methode eine Ajax-Geschichte ist ... und die erst den Return zurückgibt, wenn req.status == 200 ist.

.. also in der Callback-Funktion

function HohlWasVomServlet() {
var HttpMethod;
var url = 'action=getStmIds';

//Wenn keine HttpMethod gesetzt ist, wird POST genommen.
if (!HttpMethod) {
HttpMethod ="POST";
}

//holen des HTTPXMLRequests
var req = getXMLHTTPRequest();
if (req) {
req.onreadystatechange = function callback () {
if (req.readyState == 4) {
if (req.status == 200) {
return req.responseText
}
}
}
req.open(HttpMethod,'controllerServlet',true);
req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
req.setRequestHeader('Content-Length', url.length);
req.send(url);
}
 
Hi,

solange dein Request asynchron ist, ist es genau das Verhalten, dass erwartet wird.

Du kannst allerdings einen synchronen Request absetzen. Das hat zur Folge, dass die Programmausführung solange stoppt, bis der Request abgeschlossen ist.
Code:
req.open(HttpMethod,'controllerServlet', false);
Ciao
Quaese
 
Zurück