我正在构建一个登录表单,它将登录我而不刷新页面。Javascript/AJAX需要两次点击
我有以下页面:
INDEX.php
<script language="javascript">
$(document).ready(function()
{
//log in- send data to php page which creates a session. Log in div is reloaded to display log out button.
$("#login_form").submit(function()
{
$.post("php/loginajax.php",{emai:$('#emai').val(),pass:$('#pass').val()} ,function(data)
{
if(data=='yes') {$('#login').load('inc/headerlogin.php');}
if(data =='no') {$("#loginerror").show();}
});
//return false;
});
//log out- destroy session and reload log in div to display log in form again.
$("#logout").click(function()
{
$.post("php/loginout.php");
$('#login').load('inc/headerlogin.php');
});
});
</script>
注销按钮的工作原理细点击一次,会被破坏,登录DIV重新加载显示。
如果首页加载时登录按钮有效。 如果登录,然后注销然后再次尝试登录,全部在同一页面上而不刷新它需要点击两次登录按钮。
此外,我已经散布在if语句之前和它们内部的一些警报,但即使其余的代码工作,这些都没有显示......任何想法?
在你第一次点击时,POST不成功,因此成功函数没有被调用。即您的服务器出现问题。 –
我没有这样想过,但是当我在新页面上点击它时,它第一次工作。这是当我注销,然后尝试登录同一页面而不刷新我必须点击两次。 – penpen
什么是inc/headerlogin.php,你为什么需要在注销后再次加载()?如果该文件包含你的JS,那么'$(document).ready()'会再次运行并注册第二个'submit'处理程序。 –