2010-11-21 7 views
1

私はHTMLテーブルを持っています。各セルには画像の後にテキストが続きます。このような何か:Ajaxコール中にTD内のイメージを読み込みイメージに置き換えるにはどうすればいいですか

<td> 
    <img src='image.gif'>This is a test 
</td> 

(私はjQueryのAjax呼び出しを実行する必要があります。この呼び出しの間に、私は私が持っているのローディング画像(loading.gif)に画像を変更して、通常の画像に戻したいですこの場合はimage.gif)Ajaxが完了した後。

イメージを読み込みイメージに変更して元に戻す正しいjQuery構文は何ですか?しかし

$('img[src="image.gif"]').attr('src','path/to/new/image.png'); 
あなたのイメージが id(だけで画像要素に適用される $('#imageIDname')、)または classを持っていた場合は、セレクタを向上させることができ

$('.imageClassName'):画像を変更するには

+0

についてのご質問は何ですか?どのようにイメージに対処するか、イメージソースを変更する方法は? –

+0

@Pekka - 更新された質問はもっと明示的に – leora

答えて

5

あなたの質問は、AJAXリクエストの前にイメージを変更し、AJAXリクエストが終了したときにそれを元に戻す方法に関する質問だと思います。

ここにサンプルがあります。ここにはjQuery ajax() methodの参照がいくつかあります。注意:ajax()メソッドには、成功、エラー、およびAJAX呼び出しが成功したとき、エラーが発生したとき、または完了したとき(すなわち、成功またはエラーの後)に実行できる完了関数を宣言するオプションが含まれています。

<td> 
    <img id="loadingImg" src='image.gif'>This is a test 
</td> 

$("#loadingImg").attr("src", "loading.gif"); 
$.ajax({ //other options here 
    complete: function() { 
    $("#loadingImg").attr("src", "image.gif"); // change image back when ajax request is complete 
} }); 
3

は比較的容易ですこれはすべてそのクラス名の画像に適用されます)。これをすべてイメージにすべてtd sまたはちょうど1つの特定のimg要素に適用するかどうかわかりません。

あなたのajaxコールとのカップリングは、あなたのajaxコールがどのように見えるかわからないので、ややこしいです。

<img src='image.gif' />This is a test 

imgタグの末尾/

また、これはちょうど私のobsessivenessかもしれない、あなたの要素は次のようになります。

+0

+1に変更されましたが、画像ソースではなく、ユニークなIDをセレクタとして使用します。 –

+0

@Pekka、絶対に 'id'や' class'明らかに 'id'ははるかに優れていますが、*これは**ページにあるすべての**画像に適用するかどうかはわかりません。 –

+0

イメージタグを閉じることは、DOCタイプに完全に依存しています。 –

関連する問題