LoginSignup
1
1

More than 3 years have passed since last update.

【PHP】ajax処理でステータスコード200を返しているのに正常に動かないエラー

Posted at

PHPについて学習内容を備忘録としてまとめます。
今回は実装中に起きたエラーについて解決法まで記載します。

ステータスコード200を返しているのにajax処理が正常に動かない

下記はテキストボックスに文字を入力して編集完了ボタンをクリックすると、
testの部分が書き換わるajax機能を用いたものになります。
image.png
ただ編集完了ボタンをクリックしても文字が変わらないため、
jqueryのコードにjqXHR.statusを追記してステータスコードを確認してみます。

    }).fail(function(jqXHR, textStatus, errorThrown){
       $("div.result").text("エラーが発生しました。ステータス:" + jqXHR.status);
    });

image.png
↓編集完了をクリック
image.png

すると上記のようにステータスコードは200を返しており正常にレスポンスが取得できています。

原因

下記のようにtextstatusを確認してみたところパースエラーと表示されていました。
datatypejsonとしていたためレスポンスが厳格な作法によってパースされるため、少しでも奇形の場合はパースエラーが返されてしまうとのことです。
image.png

解決方法

datatypetextで指定すると、正常に動きました
image.png
↓編集完了をクリック
image.png

参考URL

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1