【jQuery ajax】jsonファイルを順番に読み込む方法
よく
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | var json = ['1.json', '2.json', '3.json']; var arr = []; for ( var i = 0; i < json.length; i++ ) { $.ajax( { url: json[i], type: 'GET', dataType: 'json', success: function( d ) { arr.push( d ); } }); } |
このような感じで順番にjsonファイルを読み込んで表示したりすることがあるが、
実際にajax関数は同時並行で実行され、意図した順番にはなってくれない。
それを回避する方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | var json = ['1.json', '2.json', '3.json']; var arr = []; for ( var i = 0; i < json.length; i++ ) { arr.push( $.ajax( { url: json[i], type: 'GET', dataType: 'json' })); } $.when.apply( $, arr ).done( function () { var arr_2 = []; for ( var i = 0; i < arguments.length; i++ ) { arr_2.push( arguments[i] ); } }); |
Author Profile
HOSHINO
ECのことを中心に書きたいと思います。 ネタが無いときはプログラムやデザインのことも書きます。
SHARE