如何在JavaScript中重新加载页面以显示新列表

how to reload page in JavaScript to display new list

本文关键字:显示 列表 新列表 加载 新加载 JavaScript      更新时间:2023-09-26

我是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,该人将从成员列表中删除。页面随后显示更新后的列表。然而,我尝试了几种组合,但无论我尝试什么,页面都无法更新列表。提前谢谢。

在页面的HTML中,您应该创建一个div,其成员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的内容。

window.location.reload(); // <-- reloads window

除了之前发布的答案外,使用===而不是==,并且在for循环中,您应该使用var mems缓存数组for(i = 0, max = mems.length, i < max, i++)的长度;当然是在循环之外声明的。