我无法让这个工作。将JavaScript直接删除到 onclick 事件上可以正常工作,但不会这样。
的JavaScript
function checkid(objDivID) {
if(this.id == 'id1') {
alert('ID is Checked')
};
}
HTML
<tr id='id". $row['id'] ."' class='rrtr' onclick=\"checkid(this.id);\">
<td class='name'>". $row['name'] ."</td>
<td class='data'>". $row['TotalResp'] ."</td>
<td class='data'>". $row['StaffCount'] ."</td>
<td class='data'><b>". number_format($row['Perc'],0) ."</b></td>
</tr>
谢谢,H。
答案 0 :(得分:3)
您正在传递函数this.id
,但随后在函数中尝试再次引用它。它不会起作用。请改用参数名称。
function checkid(objDivID){
if(objDivID == 'id1'){alert('ID is Checked')};
}
HTML中引用双引号的反斜杠也可能不存在,对吧?您将HTML打印为我认为的字符串。
答案 1 :(得分:1)
您可以通过多种方式解决它,一种是调用指定this
的函数:
<tr id='id". $row['id'] ."' class='rrtr' onclick=\"checkid.call(this, this.id);\">
或者只使用传递的id:
function checkid(objDivID){
if(objDivID == 'id1'){alert('ID is Checked')};
}
答案 2 :(得分:0)
那是因为您在错误的范围内使用this
。改变行
if(this.id == 'id1'){alert('ID is Checked')};
到
if(objDivID == 'id1'){alert('ID is Checked')};