【发布时间】:2020-11-16 23:30:00
【问题描述】:
我是 javascript 的初学者,正在努力学习。在这里我有简单的输入,用户应该在其中写一些东西,如果用户写了一些东西,它将打印出来,如果用户不写任何东西,它应该说“请写点东西。”。
为了做到这一点,我想使用非运算符(!)。
知道为什么我会收到此错误:Uncaught TypeError: Cannot set property 'innerHTML' of null at myFunction at HTMLFormElement.onsubmit
这是我的代码:
<!DOCTYPE html>
<html>
<body>
<form onsubmit="myFunction(event)">
<input type="text" id="text">
</form>
<div id="demo"></div>
<script>
var arvo = document.getElementById("text").value
if (!arvo) {
function myFunction(arvo) {
event.preventDefault();
document.getElementById(demo).innerHTML = "text you typed: " + arvo;
}
} else {
function myFunction(arvo) {
event.preventDefault();
document.getElementById(demo).innerHTML = "Please write something";
}
}
console.log(arvo)
</script>
</body>
</html>
【问题讨论】:
-
对于未来的问题 -> How does the snippet editor work
-
与问题无关,但您通常应该使用单独的 javscript 文件而不是使用脚本标签,因为它使您的项目更有条理
标签: javascript html if-statement innerhtml getelementbyid