0

我正在为用户登录调用一个 ajax 函数。成功登录后,我想用(例如,欢迎用户先生,注销)之类的内容刷新一个 div。

HTML:

<ul id="signup">
   <li>Login</li>
   <li>Signup</li>
</ul>

<ul id="loginbox">
     <li><label>Enter email address</label><br/><input type="text" class="bookinginput" id="uemail"></li>
     <li><label>Enter password</label><br/><input type="password" class="bookinginput" style="width: 151px;" id="upassword">
     <button class="styled-button-8" style="margin-top: -43px;margin-left: 10px;" onClick="ulogin()">Login</button>
     </li>
</ul>

阿贾克斯:

function ulogin()
{
    var uemail = $('#uemail').val();
    var upassword = $('#upassword').val();
    $.ajax({
        type: "POST",
        url: "udoologin.php",
        data: {email:uemail, password:upassword}
    }).done(function( result ) {
        $("#loginbox").html(result);  
    });
}

成功登录后,我可以将div#loginbox更改为成功登录消息,但我也想将另一个div#signup替换为

<ul id="signup">
   <li>Welcome <?php echo $user?></li>
   <li>logout</li>
</ul>

我怎样才能做到这一点?

4

1 回答 1

1

在 PHP 中,当你打印结果时,回显

<li>Welcome <?php echo $user?></li>
   <li>logout</li>

加入分隔符,如 '|||' 或者其他的东西。

在jQuery中

done(function( result ) {
 var log=result.split('|||');
 $("#loginbox").html(log[0]);
 $('#signup').html(log[1]);

});

于 2013-06-03T07:14:23.570 回答