用Jquery隐藏登录表单

当我点击提交按钮将变量发送到login_success.php页面时,我创建了登录。但是当我点击提交按钮登录表单时,我想要关闭。 我可以使用Jquery关闭表单

 $(document).ready(function(){ $("button").click(function(){ $(".loginform").hide(); }); });  

但是这次表单不会向.php文件发送请求。 我把它添加到.php文件的addin脚本然后重定向到index.html site.It也很好,但我可以看到reflection。我怎么能把它们组合起来?

这是我的表格

 

编辑我使用函数作为NAVEED悲伤。我在firefox中安装了FireBug,我可以看到我的表单validation工作正常。它发送并请求login.php但我不能对我的表单进行任何更改。它不会关闭或$ arr值没有在div标签上显示。

你应该使用JSON / AJAX组合:

Downlod jQuery

如果您的表单如下所示:

   
Username: Password:

您在ajax.js文件中的jQuery代码提交表单,然后从JSON中的 ‘php / login.php ‘获取数据并填写所需的DIV。 如果login是表单的id。

 jQuery('#login').live('submit',function(event) { $.ajax({ url: 'php/login.php', type: 'POST', dataType: 'json', data: $('#login').serialize(), success: function( data ) { for(var id in data) { jQuery('#' + id).html(data[id]); } } }); return false; }); 

您的login.php文件,如表单操作属性中所述:

 $username = $_POST['username']; $password = $_POST['password']; if( $username and $password found in database ) { // It will replace only id='loginform' DIV content // and login form will disappear $arr = array ( "loginform" => "you are logged in" ); } else { // It will replace only id='errors' DIV content $arr = array ( "errors" => "You are not authenticated. Please try again" ); } echo json_encode( $arr ); 

更多详情:

  • 如何在ajax / json中提交表单 :
  • 所有表单的常规jquery函数

尝试submit方法

  $("button").click(function(){ $("form.loginform").submit().hide(); }); 

PS你知道对页面上的所有元素应用onclick处理程序是个坏主意,对吧?

 $(document).ready(function(){ $("button").click(function(){ $(".loginform").hide(); return false; }); });