如何在javascript中重新单击按钮时更新元素

如何在javascript中重新单击按钮时更新元素,javascript,dom,button,element,Javascript,Dom,Button,Element,我只想在小应用程序中重新单击按钮时更新divp元素的内容。我正在编写大量的DOM脚本,并在JS中创建了几乎所有的HTML。有一个单选按钮选择列表,根据选中的按钮,将创建一个包含结果的div元素,并显示在页面正文的末尾 mainBody[0].appendChild(resultBox); 问题是,如果我重新单击按钮重新计算,则会生成另一个div并将其添加到主体中。我尝试过用css改变类,但它不起作用,我有点困惑自己 我怎么能用一个新的来替换它呢 一些代码片段 js 您可以尝试使用删除旧div本

我只想在小应用程序中重新单击按钮时更新divp元素的内容。我正在编写大量的DOM脚本,并在JS中创建了几乎所有的HTML。有一个单选按钮选择列表,根据选中的按钮,将创建一个包含结果的div元素,并显示在页面正文的末尾

mainBody[0].appendChild(resultBox);
问题是,如果我重新单击按钮重新计算,则会生成另一个div并将其添加到主体中。我尝试过用css改变类,但它不起作用,我有点困惑自己

我怎么能用一个新的来替换它呢

一些代码片段

js


您可以尝试使用删除旧div本身


在追加新的div之前,或者更新div的内容,而不是每次都生成div

您应该先删除旧的。您只需在创建元素时添加一个id,如

resultBox.setAttribute('id', 'any_id');
在添加新元素时,只需先删除该元素。然后添加一个新的

var oldElement = document.getElementById('any_id');
oldElement.parentNode.removeChild(oldElement);

然后做你的事情…

你可以尝试在正文末尾添加一个带有id的div,每次都重复使用它来替换其中的html,而不是附加。我希望它被隐藏,然后当按钮被单击时,它会出现,所以我猜我必须一次单击就附加它,这意味着我无法删除附加的行,或者我弄错了?您是否先设置了它的id?var nodeList=mainBody[0]。childNodes;对于(设i=0;ielement.parentNode.removeChild(element);
resultBox.setAttribute('id', 'any_id');
var oldElement = document.getElementById('any_id');
oldElement.parentNode.removeChild(oldElement);