一旦用户单击 addmore 链接,下面的代码将添加元素。
当用户单击删除链接时,问题就出现了。
我的代码上有类似的东西
<script language="JavaScript">
var count=1;
function addmore() {
alert(count);
var printme = "<table id='table"+count+"'><tr><td><a href='#' onclick='remove(count)'>remove</a></td></tr></table";
//(other code here)...
count++;
}
function remove(y) {
alert(y)
var tab = 'table'+y;
document.getElementById(tab).style.display = "none";
}
</script>
我在这里使用了警报,因此我可以轻松监控它给出的计数值。
这里发生的是'y'的值(在删除函数上)总是相同的,这是循环中的最后一个值。
例如,我单击链接 addmore 3 次,因此我的“count=4”的最后一个值。假设我想删除第三个元素,此时当我单击删除链接时,它必须具有像这样的 remove(3) 传递参数。但是这里发生的是我点击的任何元素,它似乎总是以这种方式传递参数 remove(4)