非同期関数は出現順に起動しますが、終了した順に戻ります。textこれらの単純なメソッドがオブジェクトでremoveClass実行しているものよりもゆっくりと戻るのは奇妙なことですが、それは可能だと思います。Serverの前に最初の2行を表示する必要がある場合はpostService、jQueryを試してみてくださいdeferred.promise。これは、可能性を示すフィドルと、検査するコードです。
function firstThing (){
var dfd = new jQuery.Deferred();
$('#import').text("Importing...");
$('#import img').removeClass("hidden");
dfd.resolve();
}
$.when( firstThing() ).then(
function() {
Server.postService("tests", row_datas, function(data) {
// some stuff here
});
}
)
ちなみに、コードのロジックには、のを設定することで問題があります。textクラスがあった#importものはすべて存在しなくなりますが、それは重要ではない可能性があります。imghidden
アップデート
ajaxの使用について尋ねる私のコメントに対するあなたの応答に気づいたら、asyncオプションについて読んで、あなたがしていることがイベントをブロックしているかもしれないし、していないかもしれないことを確認することをお勧めします。
また、 jQuery ajaxコールバック、特にerror、、、successおよびcomplete(現在、jQuery 1.8 + 、、、、failおよびdone)について読むことをお勧めしますalways。