23. marts 2007 - 17:24
Der er
11 kommentarer
ajax virker ikke i ie 6
hvad går de galt her?? det virker fint i firefox og ie 7, men den udskriver intet når jeg prøver at alerte "httpRequest2" ?? why?? function __loadab1(url) { var httpRequest2; if (window.XMLHttpRequest) { httpRequest2 = new XMLHttpRequest(); if (httpRequest2.overrideMimeType) { httpRequest2.overrideMimeType('text/xml'); } } else if (window.ActiveXObject) { // IE try { httpRequest2 = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { httpRequest2 = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!httpRequest2) { return false; } httpRequest2.onreadystatechange = function(){ new tjekincoming1(httpRequest2); }; httpRequest2.open('GET', url, true); httpRequest2.send(null); } function tjekincoming1(httpRequest2) { if (httpRequest2.readyState == 4) { if (httpRequest2.status == 200) { if ( httpRequest2.responseText == 0) { location.href='datafejl.php?type=1'; return false;} } else { return false; } } }
Annonceindlæg fra HP
23. marts 2007 - 18:02
#1
Prøv at bruge den her måde at lave obejktet på: function getHTTPObject() { var xmlhttp; /*@cc_on @if (@_jscript_version >= 5) try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } @else xmlhttp = false; @end @*/ if (!xmlhttp && typeof XMLHttpRequest != 'undefined') { try { xmlhttp = new XMLHttpRequest(); } catch (e) { xmlhttp = false; } } if (!xmlhttp && window.createRequest) { try { xmlhttp = window.createRequest(); } catch (e) { xmlhttp=false; } } return xmlhttp; } var http = getHTTPObject(); // We create the HTTP Object
23. marts 2007 - 18:04
#2
httpRequest2.onreadystatechange = function(){ new tjekincoming1(httpRequest2); }; Prøv i øvrigt også at udskifte ovenstående med: httpRequest2.onreadystatechange = tjekincoming1;
23. marts 2007 - 18:06
#3
Og sidst men ikke mindst, så har jeg oplevet problemer med responseText i IE6, hvor jeg blev nødt til at bruge responseXML og så selvfølgelig sørge for, at det output du får tilbage fra din url i "httpRequest2.open('GET', url, true);" er XML:)
23. marts 2007 - 19:02
#4
nu har jeg indsat den funktion du siger.. gider du så ikke få funktionen til at virke med det jeg har givet som ekspempel i spørgsmålet??? så vil ejg blive rigtig glad!!
23. marts 2007 - 20:06
#5
prøv at bruge følgende: function startTjekIncoming() { http.open("GET", 'url', true); http.onreadystatechange = tjekincoming1; http.send(null); } function tjekincoming1() { if (http.readyState == 4) { if (http.status == 200) { if (http.responseXML0) { location.href='datafejl.php?type=1'; return false;} } else { return false; } } }
25. marts 2007 - 17:00
#6
hvorfor virer dette ikke?? function __page(url) { /*@cc_on @if (@_jscript_version >= 5) try { httpRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { httpRequest = false; } } @else httpRequest = false; @end @*/ if (!httpRequest && typeof XMLHttpRequest != 'undefined') { try { httpRequest = new XMLHttpRequest(); } catch (e) { httpRequest = false; } } if (!httpRequest && window.createRequest) { try { httpRequest = window.createRequest(); } catch (e) { httpRequest=false; } } httpRequest.onreadystatechange = function() { new alertContents(httpRequest); }; httpRequest.open('GET', url, true); httpRequest.send(null); } får denne fejl: Fejl: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]" nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame :: xxxxx :: alertContents :: line 298" data: no] Kildefil: xxx Linje: 298
25. marts 2007 - 19:04
#7
hvad er linje 298?
25. marts 2007 - 20:12
#8
function alertContents(httpRequest) {if (httpRequest.readyState == 4) {if (httpRequest.status == 200) {new HandleData(httpRequest.responseText);} else {new ErrorMessage('Fejl ved indlæsning af filer.');return false;}}}
25. marts 2007 - 20:14
#9
og den melder fejl med denne på linje 199: Fejl: uncaught exception: [Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIXMLHttpRequest.send]" nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)" location: "JS frame :: xxxx :: __page :: line 199" data: no] og linje 199 er: httpRequest.send(null);
26. marts 2007 - 13:17
#10
<ole> Hvordan kan det være, du opretter et nyt objekt på onreadystatechange - uanset status af requestens readyState? Prøv noget: httpRequest.onreadystatechange = function() { alert(httpRequest.status+"\n"+httpRequest.readyState) }; /mvh </bole>
13. oktober 2009 - 21:44
#11
lukket
Vi tilbyder markedets bedste kurser inden for webudvikling