编写允许用户键入添加到有序列表的文本的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;
}

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