我正在构建一个简单的Java Web应用程序(“待办事项”),其中涉及一些JavaScript。这是我第一次使用JS,我很迷路。
有问题的麻烦来自一个按钮。有一个空白的输入字段,它接受用户提供的文本,旁边的按钮是“添加项目”。用户输入任务,例如“ Study JavaScript”,然后单击“添加项目”按钮。
该按钮以待办事项的形式填充订单项。但是我希望该按钮在单击时也清除输入字段,以使用户不会通过双击不小心将项目添加两次。
当前按钮代码:
function todoList() {
var todoInput = document.getElementById("todoInput");
var todoValue = todoInput.value;
var todoTextNode = document.createTextNode(todoValue);
if (todoValue) {
var deleteButton = document.createElement("button");
deleteButton.type = "submit";
deleteButton.textContent = "Delete";
var newItem = document.createElement("li");
newItem.appendChild(todoTextNode);
newItem.appendChild(deleteButton);
var todoList = document.getElementById("todoList");
todoList.appendChild(newItem);
todoList.appendChild(deleteButton);
// clear the todoTextNode
todoValue.update("");
todoTextNode = document.createTextNode(todoValue);
}
}
该按钮正常工作,除了它不会清除文本的输入字段。而是在浏览器控制台/开发人员工具中出现错误:
main.js:24 Uncaught TypeError: todoValue.update is not a function
at todoList (main.js:24)
at HTMLButtonElement.onclick (login:16)
我在网上找到的指南让我试图使高速缓存无效并重新加载库和各种废话。我认为答案要简单得多。我对.update()方法的使用不正确吗?有更好的方法吗?