javascript - 列表项在进入 HTML+JavaScript 待办事项列表后立即被清除
问题描述
我正在尝试创建一个简单的 HTML 待办事项列表。目前,输入工作正常,它被附加到列表中,但立即被删除。我的代码中有什么东西导致它这样做吗?
const submitButton = document.getElementById('submitButton');
const li = document.createElement("li");
function newElement() {
const inputValue = document.getElementById("myInput").value;
const t = document.createTextNode(inputValue);
li.appendChild(t);
if (inputValue === '') {
alert("You must write something!");
} else {
document.getElementById("myUL").appendChild(li);
}
document.getElementById("myInput").value = "";
let submitButton = document.createElement("submitButton");
// submitButton.className = "close";
submitButton.appendChild(txt);
li.appendChild(submitButton);
console.log('function passed!')
}
<h1>To-Do List</h1>
<form>
Add to your to-do list here: <input type="text" id="myInput">
<button onclick="newElement()" id='submitButton'>Submit</button>
<button id='clearButton'>Clear</button>
</form>
</br>
</br>
<ul id="myUL">
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
解决方案
我通过完全摆脱表单标签解决了这个问题。另外,我确保将所有变量放入函数本身(对于 JavaScript 位)
这是我的代码:
function addToList() {
const li = document.createElement("li");
const inputValue = document.getElementById("myInput").value;
const inputText = document.createTextNode(inputValue);
li.appendChild(inputText);
if (inputValue === '') {
alert("ERROR! INVALID INPUT");
}
else {
document.getElementById("myUL").appendChild(li);
}
document.getElementById("myInput").value = " ";
let submitButton = document.createElement("submitButton");
console.log('function passed!');
}
<h1>To-Do List</h1>
<script src="toDoList.js"></script>
Add to your list here: <input type="text" id="myInput">
<button onclick="addToList()" id='submitButton'>SUBMIT</button>
</br>
</br>
<ul id="myUL">
</ul>
推荐阅读
- matlab - 在 Matlab 中求解 DDE
- r - 如何在R中的一个区域中随机显示大量点
- postgresql - Postgres:从自由文本列中提取特定单词
- python - PostgreSQL OSError: Multiple exceptions: [Errno 111] Connect call failed ('127.0.0.1', 5432), [Errno 99] Cannot assign requested address
- windows - 使用批处理脚本将批处理变量通过电子邮件发送给自己
- javascript - 无法读取未定义的属性“PreviewThemeSideBar”
- swift - 是realm.write异步
- python - 在 pandas df 中使用 groupby 将行合并为一个
- node.js - 如何保护 AWS lambda 上的文件?
- java - 如何在 VSCode 中重置或更改 SonarLint 的规则?