2017-11-16 6 views
1

Ich habe eine HTTPRequest, die nicht mit Firefox ausgeführt wird, läuft es auf Google Chrome, wie es die Warnungen zurückgibt, die ich für den Test geschrieben habe.HTTPRequest zu php keine Werte in firefox

var htpr = new XMLHttpRequest(); 
    var url = "../something.php"; 
    var val = "pro_ID="+prod_id+"&quan="+quan; 
    alert("test ajx"); 
    htpr.open("POST", url, true); 
    htpr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
    htpr.onreadystatechange = function(){ 
    if(htpr.readyState == 4 && htpr.status == 200){ 
     var dt = htpr.responseText; 
     alert(dt); 
    } 
} 
htpr.send(val); 
} 



if(isset($_POST['pro_ID'])) {  
    echo "Test"; 

} 
echo "test wrong"; 

UPDATED Problem gefunden!

Ich habe den Fehler gefunden, da ich die Ajax-Funktion in einem HTML-Formular ausgelöst habe Ich glaube, die Standard-Refresh-Funktion aus dem Formular wurde die Seite aktualisiert, bevor der Ajax ausgeführt wurde, ich jetzt das Formular, um seine Standardwerte zu verhindern Funktionen "event.preventDefault()". und es scheint behoben zu haben. sehr seltsam! nie gedacht, dass ein Problem

+0

Alle Fehler in der Konsole (Entwickler-Tool)? –

+0

@Ofir nein keine Fehler überhaupt, ich kann nicht herausfinden, warum es nicht auf Firefox als seine perfekte Geldstrafe auf Chrom arbeiten wird. – Luke

+0

Vielleicht ein Cache-Problem? (da es ein js Code ist) –

Antwort

1

Unter wäre:

htpr.onreadystatechange = function(){ 

add:

console.log(htpr); 

Vielleicht zeigt es Ihnen, warum keine Antwort nicht passiert 'Code 200, Zustand 4' Test.

Sie können auch die Registerkarte "Netzwerk" in Firefox überprüfen. Wenn XHR in Chrome den Code 4xx oder 5xx zurückgibt, zeigt es in der Konsole Informationen darüber an. In Firefox gibt es keine Informationen über XHR-Anfrage Probleme - Sie müssen es in Network überprüfen (Anfrage mit Problemen sind rot).

+0

Ich fand den Fehler, wie ich die Ajaxfunktion innerhalb eines

habe Ich glaube, dass die Standardaktualisierungsfunktion vom Formular die Seite auffrischte, bevor der Ajax ausgeführt wurde, ich setze jetzt das Formular, um seine Voreinstellungen zu verhindern Funktionen "event.preventDefault()". und es scheint behoben zu haben. sehr seltsam! hätte nie gedacht, dass das ein Problem wäre. – Luke

Verwandte Themen