2017-06-17 27 views
0

我在我的HTML页面的顶部有一个表单,我希望在提交表单后消失。我的代码(下面)虽然暂时隐藏了表单,但坚持要再次成形。任何帮助,将不胜感激。如何在JavaScript中使表单在提交时消失

感谢,

欧文·沃克

<!DOCTYPE html> 
<html> 
<body> 

<form id="form" onsubmit="myFunction()"> 
    Enter name: <input type="text" name="fname"> 
    <input type="submit" value="Submit"> 
</form> 

<div id="first_div" style="visibility:hidden">Second</div> 

<script> 
function myFunction() { 
    alert("The form was submitted"); 
    document.getElementById("form").style.display = "none"; 
    document.getElementById("first_div").style.visibility = "visible"; 
alert("after"); 
} 
</script> 

</body> 
</html> 

回答

0

你没有做任何事情来阻止你的表单被提交,并重新加载页面。表格行更改为:

<form id="form" onsubmit="return myFunction()"> 

,并在你的函数警报之后添加:

return false; 
+0

谢谢!这两个改变完美运作。 (不知道为什么。) –

+0

因为要停止提交事件,您需要返回false。 – j08691

0

我会建议你使用jQuery,因为它是做这种类型的东西,而不麻烦的有力工具... 远远就能

<!DOCTYPE html> 
<html> 
<body> 

<form id="form" onsubmit="myFunction()"> 
    Enter name: <input type="text" name="fname"> 
    <input type="submit" id="submit" value="Submit"> 
</form> 

<div id="first_div" style="visibility:hidden">Second</div> 

<script> 
// using JQuery 
$(document).ready(function(){ 
     $("#submit").click(function(e){ 
       e.preventDefault(); 
       $("#form").submit(); 
       $("#form").hide(); 
       alert("Your form was successfully submitted"); 
      }); 
    }); 
</script> 

</body> 
</html> 

` 注意使用的preventDefault(的)做以这种方式来阻止其提交表单当您单击小号ubmit。

相关问题