deferred.rejectメソッドを先に確認してください。deferred.failメソッドで設定したfunctionを実行します。deferred.rejectメソッドと異なるのは引数の設定です。コンテキストにはdeferred.failメソッドで設定したfunction内でthisとして利用したい要素を設定します。deferred.rejectメソッドと同じように引数を渡すことができますが引数は配列で渡すことに注意して下さい。解説thisとして利用したい要素を指定するサンプル(rejectWith/01.html)を開いてbody内にbutton要素とdiv要素があることを確認してください。jQueryでは、まず以下の部分を確認してください。deferred.failメソッドを利用して、処理が異常終了した時の処理を設定しています。ここでのポイントは3行目の「this」です。deferred.rejectWithメソッドでは、このthisの内容を設定することができます。3行目の処理は、deferred.rejectWithメソッドでの引数で指定された要素内に「error」と表示することになります。$.Deferred();dfd.fail(function(){this.append("error");});ではdeferred.rejectWithメソッドを実行している以下の部分を確認してください。deferred.rejectWithメソッドの引数として「$("div")」が設定されているので、上記のthisは「$("div")」となります。$("button").click(function(){dfd.rejectWith($("div"));});結果として、buttonをクリックするとdiv要素内に「error」と表示されます。deferred.failメソッドで設定したfunctionに引数を送ることができます。配列で引数を送ることに注意してください。サンプル(rejectWith/02.html)を開いてbody内の構成がrejectWith/01.htmlと同じ事を確認してください。deferred.failメソッドで設定したfunctionで引数を受け取るようにしています。appendメソッドによってthisの要素内に表示されます。$.Deferred();dfd.fail(function(str){this.append(str);});引数を渡すdeferred.rejectWithメソッドは以下の様に記述され、第2引数に配列を設定しています。このように値が1つでも配列で渡さなければなりません。["error!"]);});結果として、buttonをクリックするとdiv要素内に引数で渡した「error!」が表示されます。deferred.rejectメソッドを利用してください。