我的网页上有一个内联表单,加载页面时它被 css 隐藏。我还有一个按钮来显示表单。但是,如果再次单击它,我希望同一个按钮隐藏表单。但我似乎无法让它工作,相反,当我单击内联表单按钮时,即使我从未为其分配功能,表单也会消失。
这是我的 HTML
<button id="signup" onclick="showForm('inline')">SignUp!</button>
<!-- hidden inline form -->
<div id="inline">
<h2>Register! It's free!</h2>
<form id="register" action="#" method="post" name="register">
<label for="email">Email:</label>
<input id="email" class="txt" type="email" name="email" />
<label for="password">Password:</label>
<input id="password" class="passtxt" type="password" name="password" />
<label for="password">Repeat Password:</label>
<input id="password" class="passtxt" type="password" name="password" />
<button id="registerbtn">Register</button>
</form>
</div>
这是我的 JS:
function showForm(form) {
var e = document.getElementById(form);
if (e.style.display = 'none')
e.style.display = 'inline';
else
e.style.display = 'none';
}
当我单击注册按钮时,会显示表单。但是,如果我再次单击它,则没有任何反应。但是,如果我单击表单中的注册按钮,它就会消失。为什么?我该如何解决?
编辑:我选择 DaveHogan's 作为最佳答案,因为它是我正在寻找的。但是我已经改用 JQuery 了,如果你正在阅读这篇文章。你也应该换。