使用jQuery刷新div

时间:2013-06-01 16:14:14

标签: javascript jquery html logout

是否可以使用jQuery刷新单个div?我有一个注销用户的按钮。单击按钮后,我想显示登录表单,所以我需要重新解析这个div。

我的div的内容是:

<div id="signup" class="register">

    <?php
        $email = $_COOKIE['email'];
        $login = $_COOKIE['login'];

        if($email != null && $email != "" && $login != null && $login != "") {
            echo "<h3>you are logged in as <b>$email</b></h3><br><br><button id='logoutbtn' class='submitButton'>Logout</button>";
        } else {
            // show login form
        }
    ?>

</div>

这是我执行注销的JavaScript部分:

$('#logoutbtn').click(function () {    
    $.ajax({  
        type: "POST",  
        url: "php/logout.php",  
        async: false,
        success: function(data){
            // reload signup div
        } 
    });  
});

编辑:我的logout.php脚本删除了cookie,这就是我需要重新解析signup-div的原因。

4 个答案:

答案 0 :(得分:3)

您可以使用jquery动态更改注册div的内容,如下所示:

$("#signup").html("My New Login Section");

var $loginDiv = $(document.createElement("div")).html("<label>Username</label><input type='text' id='username'/>");
$("#signup").html($loginDiv);

答案 1 :(得分:1)

使用load()

$('#signup').load('php/logout.php', function() {
  alert('Logout.');
});

答案 2 :(得分:0)

我试试:

$('#logoutbtn').on('click', function () {    
    $.ajax({  
        type: "POST",  
        url: "php/logout.php"
    })
    .done(function(data){
        $('#signup > h3').html('Please <button id="loginbtn" class="submitButton">Login</button>');
    });
})

可以使用相同的方法进行登录操作,以防止页面刷新。

答案 3 :(得分:0)

因为您在标记内部有会话方法,所以可以在以下成功事件中执行:

success: function(data){
        $("#signup").load(".register");
    } 

它将重新加载&lt; div id =“signup”class =“register”&gt;当你删除你的会话(我想)时,它将被重新加载到你的登录/登出表单。