WebアプリケーションでJQuery1.8.1を使用しています。display a loader icon
ajax-requestが完了するまでdivにとどまるポップアップを表示しようとしています。
表示される画像はalready loaded and present (hidden) on the main page
です。
<img id="myLoader" alt="" src="images/throbber.gif" style="display: none;"/>
ポップアップを表示するリンクをクリックすると、ローダーアイコンがポップアップdivに配置されます。divは、ajaxリクエストが完了すると受信したデータで上書きされます。
$('a#popup').click(function(event){
event.preventDefault();
displayPop();
$('div#popupdiv').html($('img#myLoader').show());
$.ajax({
url: 'someURL',
type: 'POST',
data: data,
dataType: 'json',
contentType: 'application/json'
}).success(function(data){
$('div#popupdiv').html(data);
});
});
一度だけ動作します。そして、他のすべての$('a#popup')
呼び出しについては、その空白です。firebugからのデバッグで、それが最初の呼び出しで$('img#myLoader')
返されるのを見ましたが、残りは返されます。クライアントサイドコーディングの初心者として、私は何が起こっているのかを把握することができません。Object[img#myLoader images/throbber.gif]
Object[]
ajaxリクエストが完了する前に、ポップアップdivにローダーアイコンを表示するにはどうすればよいですか?ローダー自体にajaxリクエストを使用したくありません。ご意見をお聞かせください。