0

我在尝试在 AJAX 检索数据后保持 cretin 窗口打开时遇到问题,以显示正确的消息来表示天气或用户是否已登录。我的Javascript如下:

function validLogin(){
var username=$('#username').val();
var password=$('#password').val();
    var dataString = 'username='+ username + '&password='+ password;
$("#flash").show();
$("#flash").fadeIn(400).html('<img src="images/loading.gif" width="32px" height="32px" />');
$.ajax({
    type: "POST",
    url: "login.php",
    data: dataString,
    cache: true,
    success: function(result){
    var result=trim(result);
    $("#flash").hide();
    if(result=='correct'){
        $("fieldset#signin_menu").show(); // <-- This will not work!
}else{
    $("#errorMessage").html(result);
}

}

在我得到信息后,窗口应该保持打开状态;但是,页面刷新并且窗口关闭。一旦您按下“登录”,这是一个 onclick 事件。会弹出一个窗口。这是弹出窗口的代码:

$(document).ready(function() {

$(".signin").click(function(e) {          
    e.preventDefault();
            $("fieldset#signin_menu").toggle();
            $(".signin").toggleClass("menu-open");
    });

    $("fieldset#signin_menu").mouseup(function() {
            return false
    });

    $(document).mouseup(function(e) {
    if($(e.target).parent("a.signin").length==0) {
            $(".signin").removeClass("menu-open");
    $("fieldset#signin_menu").hide();

    }

});

有没有更好的解决方法?我做错了吗?

4

1 回答 1

2

改用这个 jquery

 $(document).ready(function() {               
 $("fieldset#signin_menu").show(function() {
 $(".signin").toggleClass("menu-open");
 });
 });

$("fieldset#signin_menu").mouseup(function() {
        return false
});

$(document).mouseup(function(e) {
if($(e.target).parent("a.signin").length==0) {
        $(".signin").removeClass("menu-open");
$("fieldset#signin_menu").hide();

}

});

于 2013-09-14T18:26:51.237 回答