Heim  >  Artikel  >  Web-Frontend  >  So gehen Sie mit dem Ajax-Anfragefehler um. Der Statuscode ist 0

So gehen Sie mit dem Ajax-Anfragefehler um. Der Statuscode ist 0

php中世界最好的语言
php中世界最好的语言Original
2018-03-30 15:44:372990Durchsuche

Dieses Mal bringe ich Ihnen einen Ajax-Anfragefehler Wie gehe ich vor, wenn der Statuscode 0 ist, was sind die Vorsichtsmaßnahmen bei der Behandlung eines Ajax-Anfragefehlers und der Statuscode ist 0, das Folgende ist Schauen wir uns praktische Fälle an.

Heute ist bei der Verwendung von Ajax zum Anfordern von Daten aus dem Hintergrund ein Fehler aufgetreten. Der Statuscode der Eingabeaufforderung war 0. Der Hintergrund verwendet die Spring-MVC-Architektur.

Was bedeutet der Statuscode 0? Nach der Suche stellt sich heraus, dass es (nicht initialisiert) bedeutet, dass die send()-Methode nicht aufgerufen wird:

$.ajax({
url:"test",
type:"post",
data:{
  blogTitle : $("#form1 input").val(),
  blogType : $("#form1 option:selected").val(),
  article : htmlcontent
},
dataType: "json",
success: function(data,textStatus){
  if(data.flag == "success"){
    alert("发表成功!");
    window.location.href = 'http://www.baidu.com';
  }    
},
error: function(XMLHttpRequest, textStatus, errorThrown){
  alert(XMLHttpRequest.status);
  alert(XMLHttpRequest.readyState);
  alert(textStatus);
}
 });

Nach sorgfältiger Prüfung scheint es so zu sein ist nichts falsch und es funktioniert einwandfrei im Hintergrund. Die gesendeten Daten wurden empfangen, was darauf hinweist, dass Ajax die Daten weiterhin im Hintergrund sendet

Nach einigem Nachdenken stellt sich heraus, dass es ein Problem mit dem Formular gibt:

<form onsubmit="addBlog();">
//中间省略
<button type="submit">发表博客</button> 
</form>

Wie Sie sehen können, habe ich den Typ hinzugefügt ="submit"-Attribut für das Schaltflächen-Tag, aber dadurch wird ein neues Formular zum Senden generiert. Ursprünglich generiert das Formular eine Übermittlung, wenn auf die Schaltfläche geklickt wird, und eine neue erste Übermittlung wird generiert, wenn die Schaltfläche eingegeben wird ="submit" wird verwendet, was dazu führt, dass sich das Ajax-Unexecuted-Form--Ereignis ändert.

Lösung: Ändern Sie den obigen Code in:

<form onsubmit="return false">
//中间省略
<button type="addBlog()">发表博客</button>

Ich glaube, Sie haben die Methode gemeistert, nachdem Sie den Fall in diesem Artikel gelesen haben. Spannender Bitte achten Sie auf andere verwandte Artikel auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Ajax+PHP-Code zum Ändern des Status und Löschen ohne Aktualisierung

So implementieren Sie den Ajax-Client asynchron Aufruf des Servers

Das obige ist der detaillierte Inhalt vonSo gehen Sie mit dem Ajax-Anfragefehler um. Der Statuscode ist 0. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn