0

xml ファイルを取得して JSON に変換する次のコードがあります。

showLoading();
$.get(data_file_path, {}, function(content, textStatus, jqXHR){
        data_object = jqXHR;
        jsonObject = xml2json.parser(data_object.responseText);         
        hideLoading();
    });

data_file_path は .xml ファイルです。この現在のコードでは、xml2json.parser() 呼び出しが非同期で行われていないため、Loading .gif は回転していません。これは単なる JavaScript 関数です。それ以上でもそれ以下でもありません。Loading .gif が回転し続け、jsonObject が解析されたときに通常どおり非表示になるように、この呼び出しを ALSO Async にするにはどうすればよいですか?!

4

1 に答える 1

1

そもそも AJAX が非同期である唯一の理由は、データがサーバーからフェッチされている間、常にコードを実行する必要がないためです。スクリプトは、「よし、完了したら、これを実行してください」と言うことができます。

ただし、xml2json.parserJS スクリプトです。完了するまで常にコードを実行しているため、再描画できません。

これを回避する唯一の方法は、独自のバージョンを手動でプログラムして、タイマーで少しずつロードすることです。

于 2012-05-24T02:05:02.033 に答える