jQuery.ajax()でエラーだったら画面で通知したいけど、一部の通信については正常系で失敗するパターンがある(ログイン情報が401で未ログインと判断とか)ので、そのときは普通のエラー処理したくない。そんなとき。 // 初期の失敗時コールバックを登録 var handled = false; p.fail(function() { // 失敗時制御済みでなければコールバック実行 if (!handled) { return onfail.apply(this, arguments); } }); // 失敗時コールバック登録処理を上書き、 // 一度でも呼び出しがあれば制御フラグをonにする var _org_fail = p.fail; p.fail = function(callback) { handled = true; // 処理を戻し、正規の登録処理も行う p.fail =