我是JavaScript的初学者,但我写了两个函数,用于跟踪加入某个俱乐部的人。 JavaScript函数应该连续重新加载页面以显示当前成员资格,特别是如果某个成员已从俱乐部中删除。
我写的两个函数是:
function show_remove()
{
var r=confirm("Press OK to remove or CANCEL to undo.");
if (r==true)
{
alert("Removed");
}
else
{
alert("Member still part of club");
}
}
并且
function members()
{
var i;
for (i=0; i<mems.length; i++)
{
if (mems[i].isMemberofClub)
{
var link = '<a href=' + mems[i].l + '>' + mems[i].n + '</a>';
document.write(link)
}
}
}
理想情况下,这两个函数应该以某种方式链接,以便当经理点击按钮删除某人时,isMemberofClub变为false并且该人员将从成员列表中删除。然后该页面显示更新的列表。但是,我尝试了几种组合,但无论我尝试什么,页面都无法更新列表。提前谢谢。
答案 0 :(得分:1)
在您网页的HTML中,您应该创建一个ID为
的成员ID<div id='members'></div>
然后更改您的javascript函数,以便它更改该div的内容而不是使用document.write。我也在开始之前将其设置为空,因此它全部刷新。
function members()
{
var i;
document.getElementById("members").innerHTML = "";
for (i=0; i<mems.length; i++)
{
if (members[i].isMemberofClub)
{
var link = '<a href=' + mems[i].l + '>' + mems[i].n + '</a>';
document.getElementById("members").innerHTML += link + '<br />';
}
}
}
在删除成员的函数中,删除成员时,应调用members()
函数刷新DIV的内容。
答案 1 :(得分:0)
window.location.reload(); // <-- reloads window
答案 2 :(得分:0)
除了之前发布的答案,使用===
代替==
,并且在for循环中,您应该使用for(i = 0, max = mems.length, i < max, i++)
缓存数组var mems
的长度;当然,在循环之外宣布。