jQueryのAjax()で返り値がとれない!? こんなふうに書くと返り値はundefinedになってしまう。 function test(){ $.ajax({ type: 'GET', url: 'http://hoge.fuga' dataType: 'text', success: function(response){ return response; }, error: function(response){ return response; }); } var result = test(); // undefined これはajax()がデフォルトでは非同期通信をするためである。非同期通信とは、レスポンスが返って来る前に次の処理に行くことである。だから返り値を返す前に次の処理に行ってしまう。 解決策 1. 同期通信にしちゃう async: falseとすると、同期通信になる