javascript - 如何通过使用 DOM 单击提交按钮来获取文本值并将其添加到列表中?
问题描述
我在这里的第一个问题!
我正在尝试制作一个待办事项列表,其中每个待办事项都表示为一个 li。我有一个文本输入字段和一个提交按钮,但不知道如何从输入字段中获取文本值并将其添加到列表中。
这是我到目前为止所拥有的,我确信这完全是假的,因为我刚刚开始:
const submitButton = document.getElementById('submitButton');
let toDoText = document.getElementById('toDoText').value;
function addToDo() {
submitButton.addEventListener('click', function() {
let Li = document.getElementsByClassName('todo');
let toDoText = document.getElementById('toDoText').value;
for (let i = 0; i < Li.length; i++) {
form.push(toDoText);
}
})
}
<h1>TO-DO List</h1>
<form id="form">
<input type="text" placeholder="Write your todo" id="toDoText">
<input type="submit" id="submitButton">
</form>
<li class="todo">Example 1</li>
<li class="todo">Example 2</li>
解决方案
给你的<li>
元素一个父元素,这样
<ul id="toDo">
<li class="todo">Example 1</li>
<li class="todo">Example 2</li>
</ul>
然后 onclick,创建一个新的 li,用输入值填充它,并将其附加到父级。
submitButton.addEventListener('click', function () {
let newLi = document.createElement("li");
li.innerText = document.getElementById('toDoText').value;
document.getElementById("toDo").appendChild(newLi);
});
推荐阅读
- node.js - 当你调用 `npm run` 来运行 NPM 脚本时,幕后会发生什么?
- android - 如何与 Glide 并行从缓存中加载图像?
- pandas - Pandas 在 x 轴上绘制数据列
- ios - 在 Xcode12 和 SwiftUI 中,如何在 Firebase Google Auth 之后导航到下一个屏幕?
- mysql - 带有子查询的 MySQL 左连接产生不同排序的不同结果
- sql-server - AZRE SQL / SQL 服务器通过 T-SQL 写回 Azure 存储
- rust - 高效获取 Vec> 来自 Ref<'a, BTreeSet
> - flutter - StreamBuilder 仅显示第二个 MergeStream 元素的结果
- python - 需要帮助重新调整 NASDAQ IPO API 无法在 Python 中运行
- c# - 为什么我的 C# 在 SharePoint 上找不到任何列表?