FAQ |
Kalender |
![]() |
#1 | |||
|
||||
Flitig postare
|
Jag har lite problem med en Ajax grej.
Jag får alltid upp föregående resultat... ajax kod: Kod:
function getLastId(intId){ xr = new ActiveXObject("Microsoft.XMLHTTP"); xr.open("GET", "lastid.asmx/last?localId=" + intId, true); xr.onreadystatechange = function() { doc = xr.responseXML; if (xr.readyState == 4) { if (xr.status == 200) { if (doc.evaluate) { query = doc.evaluate("//text()", doc,null,XPathResult.STRING_TYPE, null).stringValue; }else { query = doc.selectSingleNode("//text()").data; } } else { query = "Error"; } } } xr.send(null); return query; } alert(getLastId("123")) så får jag blankt första gången. men kör jag koden så här: alert(getLastId("123")) alert(getLastId("321")) Så kommer första alerten vara tom medans andra innehåller IDt till 123 (den första alerten) Någon som ser något fel i koden eller kan ge mig tips på hur jag kan få igång det... |
|||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Mycket flitig postare
|
Jag misstänker att det har med A:et i Ajax (Asynkront). Det du försöker göra är väldigt synkront.
Försök på detta sätt istället (reservation för syntaxfel): Kod:
function getLastId(intId){ xr = new ActiveXObject("Microsoft.XMLHTTP"); xr.open("GET", "lastid.asmx/last?localId=" + intId, true); xr.onreadystatechange = responseHandler; xr.send(null); return xr; } function responseHandler() { doc = xr.responseXML; if (xr.readyState == 4) { if (xr.status == 200) { if (doc.evaluate) { query = doc.evaluate("//text()", doc,null,XPathResult.STRING_TYPE, null).stringValue; }else { query = doc.selectSingleNode("//text()").data; } } else { query = "Error"; } } alert(query); /* Här gör du det du vill göra då du får datat */ } xr = getLastId(4711) |
||
![]() |
![]() |
![]() |
#3 | |||
|
||||
Flitig postare
|
Funka, tack!
|
|||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Klarade millennium-buggen
|
Kan rekommendera prototypes ajax-framework. Mycket trevlig och enkelt att använda. Så slipper du ovanstående problem och får en mera robust lösning direkt.
|
||
![]() |
![]() |
![]() |
#5 | |||
|
||||
Flitig postare
|
Grazzy: Ska kika på det när jag hinner...
|
|||
![]() |
![]() |
![]() |
#6 | |||
|
||||
Har WN som tidsfördriv
|
Finns även integrerat i Symfony på ett smidigt sätt...
![]() |
|||
![]() |
![]() |
Svara |
|
|