2012-03-04 14 views
0

私はプログラマーではないので、私の質問が意味をなさない場合はお詫び申し上げます。AJAXページを読み込んだ後にJavascript関数を呼び出す

しかし、基本的に私は1セットのフィルタ(プロジェクト、年、月)を持つindex.phpを持っています。そしてsubmitを押すと、変数がfilterData.phpに送られていくつかのSQL文で使用されます。

画像のサムネイルの表形式で結果がindex.phpのdivに返されます。私がしたいのは、ユーザーが画像をクリックしたときに境界線の色が変更され、現在のオブジェクトが強調表示されるようにすることです。

<script type="text/javascript"> 
$(document).ready(function() { 
    $('.thumbnail_small').click(function(){ 
     $(this) 
      .css('border-color','#000') 
      .siblings() 
      .css('border-color','#ccc'); 
    }); 
}); 
</script> 

^それは私が今持っているとサムネイルの表は、index.phpのにハードコードされている場合、それが動作するスクリプトです。 filterData.phpを使ってテーブルをロードすると、それ以上は機能しません。

これはどのような理由があり、どうすれば回避できますか?

答えて

1

filterData.phpを使用してテーブルをロードすると、それ以降は は機能しません。

使用live以上onのjQueryのバージョンに応じて、使用している:以降動的に追加される要素については

$('#mainContainer').on('click', '.thumbnail_small', function(){ 
    $(this) 
     .css('border-color','#000') 
     .siblings() 
     .css('border-color','#ccc'); 
}); 

それとも

$('.thumbnail_small').live('click', function(){ 
    $(this) 
     .css('border-color','#000') 
     .siblings() 
     .css('border-color','#ccc'); 
}); 

を、あなたはliveかを使用するようになりましたon

+0

#mainContainerは親divですか?私はJquery 1.3を使用していますが、これを変更してもまだ動作していません。
user1067577

+0

@ user1067577:はい、例えば 'id =" mainContainer "のIDを持つコンテナが必要です。名前を変更したり、既存のものを使用したりすることができます。または、私の答えで2番目の例を使うこともできます。 – Sarfraz

+0

あなたは素晴らしいです!ありがとうございました:)私は2番目の例を使用しました。 – user1067577

関連する問題