ホームページ > ウェブフロントエンド > jsチュートリアル > Ajax インタラクション中に報告される status=parsererror エラーを解決する方法

Ajax インタラクション中に報告される status=parsererror エラーを解決する方法

php中世界最好的语言
リリース: 2018-04-02 13:33:32
オリジナル
5068 人が閲覧しました

今回は、Ajax インタラクション中に報告された status=parsererror エラーを解決する方法を説明します。 Ajax インタラクション中に status=parsererror エラーが報告された場合に解決するための 注意事項は何ですか。以下は実際的なケースです。見て。

原因: サーブレットによって返されたデータは Json 形式ではありません

1。JS コードは次のとおりです:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

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。名前は LSHome) なので、Web では .xml ファイルで、サーブレットを次のように構成します。

1

2

3

4

5

6

7

<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. サーブレット内のコードは次のとおりです。

1

2

3

4

5

6

7

8

9

10

11

12

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. 結果として、常にajax メソッドの入力エラー、および status=parsererror

1

xhr = Object {readyState: 4, responseText: "success", status: 200, statusText: "OK"}

ログイン後にコピー

5. 解決策:

その理由は、応答オブジェクトを通じて返されるデータ形式が正しくないためです。

1

2

3

 PrintWriter out = response.getWriter();

String jsonStr = "{\"success\":\"OK\"}";

 out.write(jsonStr);

ログイン後にコピー
は戻り値を分割できます。 JSON データ形式に変換すると、status=parsererror が報告されます

これを読んだことがあるはずです。この記事の場合の方法は習得できています。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。 !

推奨書籍:

Ajax を使用してポップアップ ログインを実現する方法

Web ユーザー エクスペリエンスを最適化するための Ajax + ブートストラップの手順

以上がAjax インタラクション中に報告される status=parsererror エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート