私はページを更新せずにログインするフォームを作成しています。ログインのdivを表示するには、再読み込み、2回クリックすると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>
ログアウトボタンを一度クリックし微作品、破壊されたセッション:
は、私は以下のページを持っています。ログインボタンは、最初のページの読み込み時に機能します。 ログインした後、ログアウトしてからもう一度ログインしてください。同じページのすべてのページを更新せずに、ログインボタンを2回クリックしてください。
また、if文の前とその内側の両方にいくつかのアラートが散在していますが、コードの残りの部分が表示されていなくても...任意のアイデアですか?
あなたの最初のクリックでは、最初のクリックでPOSTが成功しないため、成功関数は呼び出されません。私。あなたのサーバーに問題があります。 –
私はそんなことは考えていませんでしたが、新しいページでクリックすると初めて動作します。ログアウトした後、同じページにログインして、すこし爽やかに2回クリックする必要があります。 – penpen
'inc/headerlogin.php'とは何ですか?なぜログアウト後にもう一度' load() 'する必要がありますか?そのファイルにJSが含まれている場合、 '$(document).ready()'が再び実行され、2番目の 'submit'ハンドラが登録されます。 –