2012-05-06 33 views
0

我在表单提交按钮上使用了onclick函数来隐藏div。但它并不隐藏。做这个的最好方式是什么?提交表单后,我想在我的页面上隐藏一个div。使用jQuery提交表单后隐藏div?

<form action="" method="POST"> 
<input type="submit" onclick="hide_group_posts();"> 
</form> 

<div id='div_i_want_to_hide'> 
<?php include $_SERVER['DOCUMENT_ROOT']."page.php";?> 
</div> 

<script> 
function hide_group_posts(){ 
$('#div_i_want_to_hide').hide(); 
} 
</script> 
+0

您正在使用AJAX提交表单? – Musa

+0

也许是因为'hide_group_posts'是在按钮之后声明的?无论如何,如果你使用jQuery,不要使用内联代码。 – gdoron

+0

我不使用ajax提交表单,我必须使用ajax吗? – arboles

回答

8
$('form').submit(function(){ 
    $('#div_i_want_to_hide').hide(); 
}); 

如果您没有帮助,下列操作之一必须是真实的:

  • 你没有引用jQuery库。
  • 您没有用DOM就绪事件包装代码。
  • 你有错别字。
  • 提交功能工作,你有新的页面,因为你没有阻止默认。

阻止它这样的:

$('form').submit(function(e){ 
    $('#div_i_want_to_hide').hide(); 
    e.preventDefault(); 
    // Or with: return false;   
}); 
+0

我试过这个,它不工作。顺便说一句,我没有使用Ajax来提交表单,所以我必须使用Ajax来实现这个功能吗? – arboles

+0

是使用ajax提交表格,否则我不认为你提交表单时隐藏div的任何理由。 – Yasir

+0

工作。谢谢!我需要防止默认 – arboles