JS DOM - 添加/删除按钮不起作用

时间:2017-11-27 09:32:17

标签: javascript html dom

编写允许用户键入添加到有序列表的文本的Javascript代码。创建两个按钮(添加项目和删除最后一个),允许用户在按下时添加项目或删除最后添加的项目。 应该有一个可选的“删除#”按钮,然后是文本输入。这将删除用户输入的项目#。 此外,如果用户单击“输入要添加的项目”下的文本输入,则应删除可能已存在的任何现有文本值。

当我手动运行add()等函数时,我的代码工作正常。在控制台上。但是我输入我的remove()的那一刻;在js文件中,除非我在控制台中手动调用,否则添加按钮不起作用。删除按钮具有相同的问题。



public class Root
{
    public State[] States { get; set; }
}

public class State
{        
    public Holiday[] Holidays { get; set; }
}

public class Holiday
{
    public DateTime Date { get; set; }
    public string Note { get; set; }
}

window.onload = function() {
  var button = document.getElementById("add");
  var button1 = document.getElementById("delete");
  var button2 = document.getElementById("deleteItem");
  var input = document.getElementById("input");
  button.onclick = add;
  button.onclick = remove;
  button.onclick = specific;
  input.onclick = clearText;
}

function clearText() {
  this.value = "";
}

function add() {
  var input = document.getElementById("input");
  var output = document.getElementById("list");
  if (input.value != "") {
    var li = document.createElement("li");
    li.innerHTML = input.value;
    output.appendChild(li);
  }
}


function remove() {
  var list = document.getElementById("list");
  var allLi = list.getElementsByTagName("li")
  if (allLi.length > 0) {
    list.removeChild(allLi[allLi.length - 1]);
  }
}

ol {
  width: 200px;
  height: 200px;
  background-color: silver;
  border: 1px solid black;
  overflow: auto;
}




1 个答案:

答案 0 :(得分:0)

由于你已经在window.onLoad中编写了函数调用,它只在页面加载时才有效。所以尝试在每个按钮上调用函数点击