Heim >Web-Frontend >js-Tutorial >So beheben Sie den Fehler „status=parsererror', der während der Ajax-Interaktion gemeldet wurde
Dieses Mal zeige ich Ihnen, wie Sie den während der Ajax-Interaktion gemeldeten Fehler „status=parsererror“ beheben können. Das Folgende ist ein praktischer Fall . Werfen wir einen Blick darauf.
Ursache: Die vom Servlet zurückgegebenen Daten sind nicht im Json-Format
1. Der JS-Code lautet:
var jsonStr = {'clusterNum':2,'iterationNum':3,'runTimes':4}; $.ajax({ type: "post", //http://172.22.12.135:9000/Json.json url: "/LSHome/LSHome", dataType : 'json', data : jsonStr, success: function(data,textStatus){ if(textStatus=="success"){ alert("创建任务操作成功"+data); } }, error: function(xhr,status,errMsg){ alert("创建任务操作失败!"); } });2. Beachten Sie, dass die obige URL /LSHome/LSHome ist (der Projektname ist LSHome), also konfigurieren Sie das Servlet in der Datei web.xml wie folgt:
<servlet> <servlet-name>LSHomeServlet</servlet-name> <servlet-class>com.ys.servlet.LSHomeServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LSHomeServlet</servlet-name> <url-pattern>/LSHome</url-pattern>3. Der Code im Servlet lautet:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //聚类数量 String clusterNum = request.getParameter("clusterNum"); //迭代次数 String iterationNum = request.getParameter("iterationNum"); //运行次数 String runTimes = request.getParameter("runTimes"); System.out.println("聚类数量为:"+clusterNum+"---迭代次数:"+iterationNum+"---运行次数:"+runTimes); PrintWriter out = response.getWriter(); out.write("success"); out.close(); }4. Das Ergebnis ist, dass bei der Eingabe des Ajax immer ein Fehler auftritt Methode und Status=Parsererror
xhr = Object {readyState: 4, responseText: "success", status: 200, statusText: "OK"}
5. Lösung: Der Grund dafür ist, dass das Datenformat durch zurückgegeben wurde Antwortobjekt ist falsch. Die richtige Methode ist
Der Rückgabewert kann in das JSON-Datenformat zusammengesetzt werden, und dann wird status=parsererror gemeldetPrintWriter out = response.getWriter(); String jsonStr = "{\"success\":\"OK\"}"; out.write(jsonStr);
Ich glaube, Sie beherrschen das Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der PHP-Chinese-Website, nachdem Sie den Fall in diesem Artikel gelesen haben.
Empfohlene Lektüre:
Wie man Ajax verwendet, um eine Popup-Anmeldung zu realisierenAjax+Bootstrap-Schritte zur Optimierung des Webs BenutzererfahrungDas obige ist der detaillierte Inhalt vonSo beheben Sie den Fehler „status=parsererror', der während der Ajax-Interaktion gemeldet wurde. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!