質問: AJAXで「通信が成功しても、データベースの更新はさせない」というケースがあると思うのですが、それを知らせる場合の書き方がわかりません。 処理を行う「ajax.php」には「ある条件のときはデータベースの更新はさせずに return false」と書いているのですが、下記jQueryではその条件に該当しているのに「'データベースの更新はされませんでした。'」のアラートが表示されないという点で悩んでいます。 どうやら8行目の「if( !data ){}」では、「ajax.php」の「return false」が判定できないのです。 ``` $.ajax({ url: ajax.php type: POST timeout: 10000 data: hoge }) .done(function(data) { if( !data ){ alert('データベースの更新はされませんでした。'); ) }) .fail(function() { alert('通信ができませんでした。'); }); ``` 通信が成功しているので、「fail」でなく「done」の中での処理になるかと思うのですが、「ajax.php」に「return false」でなく何を書けば、上記jQueryで「'データベースの更新はされませんでした。'」のアラートが表示されるようになりますか?
回答: わたしがよくする手は ``` { "error": true, "message": 'データベースの更新はされませんでした。' } ``` というようなJSONを返して ``` .done(function(data) { if (data.error) { alert(data.message); ) }); ``` とすることですね。 いずれにしても決めの問題です