Javascript 切换菜单不工作JQuery

Javascript 切换菜单不工作JQuery,javascript,php,jquery,drop-down-menu,toggle,Javascript,Php,Jquery,Drop Down Menu,Toggle,我的网站有登录系统。单击菜单且用户未登录时,将调用showpopup()函数并显示注册表单 单击菜单且用户已登录时,将显示下拉列表,并调用afterlogin() 问题是,我想在单击菜单时切换下拉列表。但是一旦下拉列表打开,只有在下拉列表或下拉列表之外单击时,我才能关闭下拉列表 如何通过单击菜单切换/关闭下拉列表 index.php <div id="menu">Menu</div> <div id="dropdown"> //this drop down

我的网站有登录系统。单击
菜单
且用户未登录时,将调用
showpopup()
函数并显示注册表单

单击
菜单
且用户已登录时,将显示
下拉列表
,并调用
afterlogin()

问题是,我想在单击
菜单
时切换
下拉列表
。但是一旦
下拉列表
打开,只有在
下拉列表
下拉列表
之外单击时,我才能关闭
下拉列表

如何通过单击
菜单切换/关闭
下拉列表

index.php

<div id="menu">Menu</div>

<div id="dropdown"> //this drop down is hidden
    <a href="#" id="a">A</a>
</div>

<div id="dropdownA"> //this drop down is also hidden
    <p>Hello</p>
</div>
<?php
ob_start();
session_start();
include_once('database.php');

if(isset($_SESSION['username'])){
    echo    '1';
return false;
}
if (!(isset($_SESSION['username']))){
    echo    '0';
return false;
}
ob_end_flush(); 
?>

像这样尝试。调用函数表单
$.post()
done方法

$.post("login.php", function(data) {
    }).done(function(data){
        if(data === true){
            afterLogin();

        } else if(data === false){
            showpopup();

        }
    });
在php中,只需返回
true
false

<?php
ob_start();
session_start();
include_once('database.php');

if(isset($_SESSION['username'])){
    echo  true;

}
if (!(isset($_SESSION['username']))){

    echo false;
}
ob_end_flush(); 
?>


有关更多信息,请参见文档

尝试这样做。调用函数表单
$.post()
done方法

$.post("login.php", function(data) {
    }).done(function(data){
        if(data === true){
            afterLogin();

        } else if(data === false){
            showpopup();

        }
    });
在php中,只需返回
true
false

<?php
ob_start();
session_start();
include_once('database.php');

if(isset($_SESSION['username'])){
    echo  true;

}
if (!(isset($_SESSION['username']))){

    echo false;
}
ob_end_flush(); 
?>


有关更多信息,请参见文档

函数(数据){}。完成(函数(数据){
此格式是正确的格式?我根据您的更改了我的代码,现在它没有显示
下拉菜单
菜单。它只是刷新页面。我刚刚做了,现在我明白了。完成()是为了成功。但是每当我点击
菜单时,它仍然会刷新页面。它不会调用
showpopup()
afterlogin()
。因此,如果我使用
.done()
,它会刷新页面,并且不会执行任何操作
函数(数据){}.done(函数(数据){
这种格式是正确的格式吗?我根据您的更改了我的代码,现在它没有显示
下拉菜单
菜单。它只是刷新页面。我刚刚这么做了,我现在明白了。done()是成功的。但每当我单击
菜单
,它仍然刷新页面。它不会调用
showpopup()
afterlogin()
。因此,如果我使用
.done()
,它将刷新页面,并且不会执行任何操作