我在表格的每一行都有一个带有表格和“删除行”链接的网页。如何防止页面刷新从JavaScript表中删除行时?
问题是,当我点击删除行,浏览器不会刷新页面。我如何防止他发生?
下面是一个完整功能的HTML页面。试试吧,向下滚动到行,单击链接会导致滚动条跳回顶部:
注:我使用的是Firefox 11
<SCRIPT language="javascript">
function deleteRow(rowID) {
try {
var table = document.getElementById("mytable");
var iRowIndex = 0;
while (iRowIndex < table.rows.length) {
var row = table.rows[iRowIndex];
if (row.id == rowID) {
table.deleteRow(iRowIndex);
} else {
iRowIndex++;
}
}
} catch (e) {
alert(e);
}
}
</SCRIPT>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<table id="mytable">
<tr id="foo" >
<td>FOO</td>
<td>
<a href="#" onclick="deleteRow('foo')">remove</a>
</td>
</tr>
<tr id="bar" >
<td>BAR</td>
<td>
<a onclick="deleteRow('bar')">remove</a>
</td>
</tr>
</table>
任何想法?
在这个例子中,它不会刷新:http://jsfiddle.net/Rc8sQ/ – Mageek 2012-07-23 19:40:57
感谢您的 - 以前从未见过的jsfiddle - 但是当我点击“删除”链接那里,根本不消失。我错误地使用jsfiddle吗? – 2012-07-23 19:47:26
你可以给每行赋予独特的id,并设置该tbody显示:无。这就是我使用可靠的跨浏览器功能。 – Tschallacka 2012-07-23 19:47:32