【发布时间】:2019-05-16 15:49:18
【问题描述】:
当输入未填写时我们如何显示错误消息? 这是我的代码:
<body>
<form method="post">
<label>Enter your name</label>
<input id="myName" type="text" placeholder="Your name here"><br>
<label>enter your first name</label>
<input id="myFirstName" type="text" placeholder="Your first name here"><br>
<input id="myButton" type="button" value="submit">
</form>
<p id="mydisplay"></p>
<script src="script.js"></script>
</body>
function myFunction(){
var x = document.getElementById("myName").value + "<BR>" + document.getElementById("myFirtName").value ;
if (x != ""){
alert("Thank you fill in the fields")
} else{
document.getElementById("myDisplay").innerHTML = x;
}
}
window.addEventListener("click", function () {
document.getElementById("myButton").addEventListener("click", myFunction);
});
但我之前测试了这些字段,但没有显示错误消息告诉我我的输入为空。 另一方面,之后它很好地向我展示了我在我的页面输入中标记的内容
【问题讨论】:
-
你总是将 + "
" 添加到 x 所以逻辑上 x 总是 != "" -
x 永远不会是空字符串,因为您已在其中附加了一个 br
-
您的 JavaScript 中有一个错字:“myFirtName”而不是“myFirstName”(缺少“s”)
-
我看到了三个问题。拼写错误“myFirtName”而不是“myFirstName”(缺少“s”)。您始终在字符串中添加 BR 的事实使得即使输入字段为空,它也永远不会为空,最后......表单被提交,因为您没有阻止默认行为。
标签: javascript html forms input