2017-05-07 133 views
1

enter image description here我正在使用jquery & ajax & php创建登录表单。 除了成功功能,一切正在工作。 当php文件得到响应时,即使它是真的,它也会运行else语句。JQuery if语句不工作(AJAX/PHP)

的JQuery/Ajax代码

$('document').ready(function() 
{ 
    $("#btnLogin").click(function(){ 

    email=$("#userEmail").val(); 
    password=$("#userPassword").val(); 
    $.ajax({ 

     type : 'POST', 
     url : 'userLogin.php', 
     //data : {userEmail: email, userPassword: password}, 
     data: "userEmail="+email+"&userPassword="+password, 
     success : function(response) 
     {  
     if(response==='true'){  
      //login sucess animation 
       $("#btnLogin").html('<img src="media/login.gif" /> &nbsp; Iniciando sessão ...'); 
       setTimeout(' window.location.href = "index.php"; ',4000); 
     } 
     else{ 
      //error message 
      $("#error").fadeIn(5000, function(){  
       $("#errorlogin").html('<div class="alert alert-danger"> <span class="glyphicon glyphicon-info-sign"></span> &nbsp; '+response+' !</div>'); 
       //$("#btnLogin").html('<span class="glyphicon glyphicon-log-in"></span> &nbsp; Sign In'); 
      }) 
      } 
     }, 
     beforeSend: function() 
     {    
      $("#loginerror").fadeOut(); 
      $("#btn-login").html('<span class="glyphicon glyphicon-transfer"></span>'); 
     } 
    }); 
    return false; 
    }); 
}); 

即使响应等于真会运行else语句(示警告说“真的!”而不是登录动画)

+2

做一个'的console.log(响应)',并显示你在控制台看到这里。 – gaganshera

+0

你能警报(响应),请为我 –

+0

首先检查是否获得TRUE;如字符串或布尔作为Ajax响应。 –

回答

0

我有一个老<script type="text/javascript"> //window.location="index.php"; </script> 坐在我的PHP文件呼应响应后,那是什么导致这个烂摊子。 我才能够看到这个做什么gaganshera建议(使用的console.log(响应)之后。

0

返回由于可能的额外空白,一个简单的字符串可能会出现错误。

尝试微调串,甚至更好的回报JSON

if(response.trim()==='true'){