質問: null) alert('データが0件でした'); return data; }).fail(function(jqXHR, textStatus, errorThrown){ alert('エラー'); }); } ``` ### 試したこと defferdやcompleteを使用しましたが,結果は変わりませんでした. どこを改善すれば所望の結果を得ることができるでしょうか? ### 補足情報(言語/FW/ツール等のバージョンなど) より詳細な情報
回答: こうですね ``` var value=123; $.when(getID(value)).done(function(){ var myID = arguments[0]; var ret = insert_into_db(myID); }); function getID(Key){ var def= $.Deferred(); $.ajax({ type: "POST", dataType: "json", url: "http://localhost/php/DB_getID.php", data:{k:Key}, success:function(data, textStatus, jqXHR){ if(data == null) alert('データが0件でした'); def.resolve(data); }, error:function(jqXHR, textStatus, errorThrown){ alert(textStatus); }, }); //return def.promise(this); /*修正*/ return def.promise(); } ``` すみません、一部修正しました