html 如何从用户获取值并将其设置在本地存储上?[关闭]

ars1skjm  于 2023-05-21  发布在  其他
关注(0)|答案(1)|浏览(115)

已关闭,此问题需要details or clarity。目前不接受答复。
**想改善这个问题吗?**通过editing this post添加详细信息并澄清问题。

3天前关闭。
Improve this question
下面是表格:

let User = document.getElementsByClassName(".input");
let inpUser = document.getElementsByClassName(".input").value;
//let nodeText = document.createTextNode(inpUser);
let taskSection = document.querySelector(".tasks");
let submitBtn = document.querySelector(".add");

onsubmit = function() {
  if (inpUser !== "") {
    console.log(inpUser);
    let nodeText = document.createTextNode(inpUser);
    taskSection.appendChild(nodeText);
  }

}
<body>
  <center>
    <form action="">
      <input type="text" class="input">
      <input type="submit" class="add" value="add task">
    </form>
    <div class="tasks"></div>
  </center>
  <script src="testing.js"></script>
</body>

问题是我不能从用户那里获得输入并将该值放入本地存储。

wfveoks0

wfveoks01#

1.使用document.querySelector只获取匹配选择器的第一个元素。不要尝试在没有选择索引的情况下从document.getElementsByClassName读取值。
1.您必须在submit事件侦听器中读取输入的value,而不是在页面加载时读取。
1.您需要阻止表单使用event.preventDefault()提交,以查看附加的文本。
1.您可以直接使用Element#append来追加文本字符串,而不是创建文本节点。

  1. <center>已弃用;在CSS中使用text-align: center
const taskSection = document.querySelector(".tasks");
document.querySelector('form').addEventListener('submit', e => {
  const inpUser = document.querySelector('.input').value;
  e.preventDefault();
  if (inpUser) {
    console.log(inpUser);
    taskSection.append(inpUser);
  }
});
<form style="text-align: center;">
  <input type="text" class="input">
  <input type="submit" class="add" value="add task">
</form>
<div class="tasks"></div>

相关问题