Klaus: Zeile aus Tabelle löschen

Beitrag lesen

Hallo,

ich würde gerne eine Zeile aus einer Tabelle löschen.
Wenn ich das Löschen über einen input-Button anstoße funktioniert es, bei einem Link <a> funktioniert es nicht. Warum?

Hier der Code, der nicht funktioniert (r.parentnode is undefined)
<html>
<head>
<script type="text/javascript">
function deleteRow(r)
{
var i=r.parentNode.parentNode.rowIndex;
document.getElementById('myTable').deleteRow(i);
}
</script>
</head>
<body>
<table id="myTable" border="1">
<tr>
  <td>Row 1</td>
  <td><a href="javascript:deleteRow(this);">delete</a></td>
</tr>
<tr>
  <td>Row 2</td>
  <td><a href="javascript:deleteRow(this);">delete</a></td>
</tr>
<tr>
  <td>Row 3</td>
  <td><a href="javascript:deleteRow(this);">delete</a></td>
</tr>
</table>
</body>
</html>

und hier im Vergleich, der der funktioniert:

<html>
<head>
<script type="text/javascript">
function deleteRow(r)
{
var i=r.parentNode.parentNode.rowIndex;
document.getElementById('myTable').deleteRow(i);
}
</script>
</head>
<body>

<table id="myTable" border="1">
<tr>
  <td>Row 1</td>
  <td><a href="javascript:deleteRow(this);">delete</a></td>
</tr>
<tr>
  <td>Row 2</td>
  <td><a href="javascript:deleteRow(this);">delete</a></td>
</tr>
<tr>
  <td>Row 3</td>
  <td><a href="javascript:deleteRow(this);">delete</a></td>
</tr>
</table>

</body>
</html>