【问题标题】:loop through and remove form elements in Javascript在Javascript中循环并删除表单元素
【发布时间】:2015-01-29 13:08:49
【问题描述】:

您好,我在学习 Javascript 时一直在写一个 Javascript 测验,但遇到了一个问题。

我有一个函数可以用单选按钮动态创建问题/答案以标记问题。

当我使用第二个功能尝试删除问题/答案以便显示新问题时;它会删除文本(在 p 标签中),但不会删除单选按钮,即使它们也显示为表单元素的子元素。

function removeLastQuestions() {
    
    var allQuestions = document.getElementById('questionForm');
    
    for (var i = 0; i < allQuestions.children.length; i++) {
        allQuestions.removeChild(allQuestions.children[i]);
    }
}  

问题/答案和按钮包含在 ID 为“questionForm”的表单中

我想我可以将整个表单放在一个 div 中并删除该表单,但我想知道为什么循环遍历它们不起作用。我试图在不使用 Jquery 的情况下做到这一点。

感谢您的帮助。

【问题讨论】:

  • 请将相应的html源添加到您的帖子中。您可以使用问题下方的“编辑”链接来完成。
  • 在其他函数生成表单之前,html 非常稀疏,但我会把它放进去,虽然我现在有一个可行的解决方案,谢谢。

标签: javascript


【解决方案1】:

试试这个方法:

var node = document.getElementById('questionForm');

while (node.hasChildNodes()) {
    node.removeChild(node.lastChild);
}

这将删除所有表单元素。

JSFiddle demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多