大家好,我正在做一个学校项目。 我想在用户登录时切换一个类。我让会话工作,javascript 正在检测会话,但类没有切换。这是我的代码
<script language='javascript' type='text/javascript'>
var userid = "<?php echo $username; ?>";//username is the session variable
if (userid==(""))//indicaates that no one is logged in
$('#det_login').toggleClass('hide');
else
$('#det_logout').toggleClass('hide');
</script>
<li id="det_login"><a href="javascript:login('show');" class="nav2"> login</a><li>
<li id="det_logout" class="hide" ><a href="javascript:login2('show');" class="nav2"><?= $username ?> logout</a><li>
请伙计们,我真的很感激你们的帮助。谢谢
谢谢你们的帮助,这就是我所做的。它没有明显的切换,因为我在显示语句上方有 javascript。
<li id="det_login" class="show" ><a href="javascript:login('show');" class="nav2">
login</a><li>
<li id="det_logout" class="show" ><a href="javascript:login2('show');" class="nav2"><?= $username ?>
logout</a><li>
<script language='javascript' type='text/javascript'>
var userid = "<?php echo $username; ?>";
if (userid==(""))
{
$('#det_logout').addClass('hide');
$('#myaccount').addClass('hide');
$('.divider2').addClass('hide');
}
else
$('#det_login').addClass('hide');
</script>
首先,你正在做的事情不是正确的做事方式。
我认为您要做的是,如果用户已登录,则设置会话变量。如果此用户已登录,则尝试显示/隐藏某些内容,反之亦然。
对于切换,这部分就足够了。我建议不要使用切换,因为它已被弃用。
var flag = false;
$(document).on('click', '.login', function(event) {
if (flag) {
// logged in code
}else{ //in your case if (userid==(""))
// logout code
}
flag = !flag;
});
更简单的方法:
<script>
var is_logged_in = "<?php echo $_SESSION['log_status'] ?>"; //$_SESSION['log_status']=true..assume
if (is_logged_in) {
//your code..$(".class or #id").addClass("xyz");//show,hide or any appropriate action
} else {
//some other action
}
</script>