0

我正在用 PHP 生成表格并将其添加到 HTML 中,
我以这种方式将 PHP 代码添加到 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

生成的数据是动态的。尝试使用“开”的方法。

于 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 回答