jquery on Click事件未触发

时间:2013-12-19 17:17:34

标签: javascript jquery

这是我发射事件的脚本

   $("#drg_table").closest('tr td').click(function(){     
                    alert('i am here');
                });

这是我的表

       <table name="drg_table">
<tbody>
<tr id="hospital_name" name="hospital_name">
<td>hospital_name</td>
<td>Average Covered Charges</td>
<td>Average Total Payments</td>
<td>Total Discharges</td>
</tr>
<tr id="GREEN CLINIC SURGICAL HOSPITAL" name="GREEN CLINIC SURGICAL HOSPITAL">
<td>GREEN CLINIC SURGICAL HOSPITAL</td>
<td>2701.72727272727</td>
<td>2821</td>
<td>11</td>
</tr>......</tbody></table>

但事件根本没有解雇

3 个答案:

答案 0 :(得分:4)

drg_table是名称属性而不是id。另外,您刚刚使用了.closest()。实际上,它会查找ancestor元素,而不是descendants

尝试,

$("table[name='drg_table'] tr td").click(function(){     
      alert('i am here');
});

答案 1 :(得分:3)

.closest()遍历DOM。

在您的情况下,closest()可以应用于tdtr td,但不能应用于table本身。

属性用方括号括起,id为# + id。

尝试:

$("table[name='drg_table']").find("tr td").click(function(){     
    alert('i am here');
});

OR

$("table[name='drg_table']").on("click","tr td").click(function(){     
    alert('i am here');
});

OR

$("table[name='drg_table']tr td").click(function(){     
    alert('i am here');
});

答案 2 :(得分:2)

已弃用name属性,您的选择器正在寻找id,因此请更改:

<table name="drg_table">

<table id="drg_table">

并使用:

$("#drg_table").on("click","tr td").click(function(){     
    alert('I am here');
});
相关问题