我想将我的输入值记录到控制台,但是每当我单击提交按钮时,它都会记录未定义的日志,请问为什么会发生这种情况。 下面是我的代码
<!--html-->
<body>
<form action="" id="form">
<input type="text" name="" id="input" />
<input type="submit" name="" id="submit" />
</form>
</body>
<!--script-->
<script>
const form = document.querySelector('#form');
const input = document.querySelector('#input');
const submit = document.querySelector('#submit');
function adds(e) {
console.log(e.target.value);
e.preventDefault();
}
form.addEventListener('submit', adds);
</script>
答案 0 :(得分:0)
e.target
是一个 HTMLFormElement
。它没有 value
属性。
如果您想获取输入的值,请通过 input
或 form.firstChild
引用它。
const form = document.querySelector('#form');
const input = document.querySelector('#input');
const submit = document.querySelector('#submit');
function adds(e) {
console.log(form.firstChild.value);
e.preventDefault();
}
form.addEventListener('submit', adds);
<body>
<form action="" id="form">
<input type="text" name="" id="input" />
<input type="submit" name="" id="submit" />
</form>
</body>