我一直在查看成千上万的教程,以使a-tag消失并重新出现在我的“登录”表单中,但没有一个对我有用。即使我复制并粘贴它也不起作用。这是我的代码
<form>
<input type="submit" name="btnadd" value="Login" onsubmit="hide()">
<a style="color: red;" id="notfound">User not found!</a>
</form>
</div>
<script>
var hide = function() {
var x = document.getElementById("notfound");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
</script>
请帮助我完成这项工作。
答案 0 :(得分:3)
2个问题。
下面是一个有效的示例。
ps。直接在元素上使用onsubmit,onclick等不是现代方法,请查看addEventListener https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener,以更好地处理DOM事件。
ps。如果运行该代码段,则可能会在再次单击该按钮时注意到,该链接显示在下面,这是因为锚标记是默认的内联而不是阻塞的。因此,要停止此操作,您可以将其更改为内联。
var hide = function() {
var x = document.getElementById("notfound");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
return false;
}
<div>Login Page.</div>
<form onsubmit="return hide();">
<input type="submit" name="btnadd" value="Login">
<a style="color: red;" id="notfound">User not found!</a>
</form>
答案 1 :(得分:1)
您实际上非常亲密,样式应为:
x.style.visibility = 'hidden'
也就是说,如果您想要的效果是完全不可见的。
答案 2 :(得分:0)
OnSubmit将无法完成它。使用onClick =“ myFunction();”。 document.getElementById(“ notfound”)。style.visibility =“隐藏”;