表单提交后隐藏/显示Div?

Jes*_*ica 7 html javascript forms

嗨,我有一些麻烦让这个工作,非常简单,我想要做的是显示我的HTML表单提交后的div.

<head>

<script type="text/javascript">
 function showHide() {
   var div = document.getElementById(hidden_div);
   if (div.style.display == 'none') {
     div.style.display = '';
   }
   else {
     div.style.display = 'none';
   }
 }
</script>

</head>


<body>

<form method="post" name="installer">

<label>Home Keyword</label>
<br />
<input type="text" name="hello" value="">
<br />
<input type="submit" value="" name="submit" onsubmit="showHide()">

</form>

<div id="hidden_div" style="display:none">
<p>Show me when form is submitted :) </p>
</div>

</body>
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激谢谢:)

Cᴏʀ*_*ᴏʀʏ 17

我想你在电话中只是错过了"hidden_​​div"周围的引号document.getElementById("hidden_div")!

但实际上,您的页面可能会回发,重置页面状态,从而使hidden_​​div看起来总是处于隐藏状态 - 您打算通过AJAX处理表单提交吗?

如果要查看预期的行为,则应将showHide()调用移至<form>元素,并在其后返回false:

<form method="post" name="installer" onsubmit="showHide(); return false;">
Run Code Online (Sandbox Code Playgroud)

并将提交按钮保留为:

<input type="submit" value="" name="submit" />
Run Code Online (Sandbox Code Playgroud)

另请注意,您没有自动关闭<input />按钮标签,或者在其中显示任何文本.