我有一张桌子,我希望通过点击href标签来删除tr。这是代码。
<tr>
<td data-title="ID">
echo '<a href="" onclick="return Deleteqry('.$orderID.')";><font size="2" color="#FF0000"><i class=" fa fa-remove" title="Remove this Row"> </i></a>';
</td>
</tr>
<script>
function Deleteqry(id)
{
if(confirm("Are you sure you want to delete this Row?")==true)
$(this).closest('tr').remove();
return false;
}
</script>
我在SO中检查了其他问题并找到了$(this).closest('tr').remove();
,但它无效。我没有得到任何错误但行没有删除。我正在收到警报框,但行没有删除。
请告知我的错误。
答案 0 :(得分:7)
正常函数中基本上this
将指向window
对象。
.... onclick="return Deleteqry('.$orderID.', this)";>
所以你必须手动将它传递给内联事件处理函数。
function Deleteqry(id,_this) {
if(confirm("Are you sure you want to delete this Row?")==true)
$(_this).closest('tr').remove();
return false;
}
接收它,将其转换为jquery对象并对其进行处理。