0

私はPHPでテーブルを生成し、次の
方法でPHPコードをHTMLに追加してHTMLに追加しています:

$('#pnametable').html(myVar);   

私のPHPコード:

$str="<table id='notable'>";    
while($row=mysql_fetch_array($result,MYSQL_ASSOC)){       
   $str.="<tr id='gtpname'><td class='pnotd'>".$row['pname']."</td></tr>";       
}       
$str.="</table>";`   

今私のjQueryコードは次のようになります:

$("#notable > tbody > tr > td").click(function() {       
  alert("wdwad");      
});

解決策を見つけるのを手伝ってください。

4

3 に答える 3

3

生成されるデータは動的です。「on」メソッドを使用してみてください。

于 2012-08-28T19:09:24.287 に答える
2

テーブルをどのように作成しているかは 100% 明確ではありませんが、動的に作成しているようです。この場合、このonようなメソッドを使用する必要があります

$('#pnametable').on('click','#notable td', function(){
    alert("wdwad");
});

このクライアントコードがテーブルを構築していると仮定しています

$('#pnametable').html(myVar);   
于 2012-08-28T19:09:45.050 に答える
0

あなたのjqueryセレクターはオフです。tbody を探していますが、PHP コードは tbody を作成しません。

次のように PHP を変更できます。

$str="<table id='notable'><tbody>";    
while($row=mysql_fetch_array($result,MYSQL_ASSOC)){       
   $str.="<tr id='gtpname'><td class='pnotd'>".$row['pname']."</td></tr>";       
}       
$str.="</tbody></table>";

または、jquery セレクターを次のように変更します。 $("#notable > tr > td")

于 2012-08-28T19:11:30.323 に答える