用的tp5,ajax请求返回了数据,确执行error?

时间:2021-04-05 10:48:40
$("#loginfrm").submit(function(e){
   //
     //处理登录的ajax。
    
     var _username = $('#username').val();
     var _password = $('#password').val();
     var url ="{:url('/admin/login/')}";
    
     $.ajax({     
     type:"POST",
     async:false,
     url:url,
     datatype:"json",
     data:{username:_username,password:_password},
     success:function(res){
    
         alert(res.info);
         
     if(res.status == 1){
     alert(res.info);
     window.location.href = res.url;
     }else{
     alert(res.info);
     }
    
     },
     error: function(XMLHttpRequest, textStatus, errorThrown) {

                                  // alert(XMLHttpRequest.status);
                                 // alert(XMLHttpRequest.readyState);
                                alert(textStatus);  //总是返回 paraseeror,
                }
    
     });  
});

------------------------------------------------------------------------------ tp5 代码:
..
..
  return json(array(
"status"=>1,
  "info"=>'登录成功!',
  "url" =>"{:url('/admin/login/main')}"
  )
  );

//$this->success('登录成功!','main');
//$this->redirect('main');

} else {
return json([
"status"=>0,
"info"=>"登录失败!",
"url" =>"/admin/login/"
]
);
-----------------------------------------------------------------------------------------------------------------------------------------
返回的数据是:{"status":0,"info":"登录失败!","url":"\/admin\/login\/"}

也没看出来json格式错误啊!!!,始终是执行error,高人请指点迷津!

5 个解决方案

#1


url:url,    你的url地址不对吧   url:"/admin/login"

#2


url不对不就返回不来json数据了

#3


在后台吧,获得的参数看一下,是不是你想要的那种。。

#4


{"status":0,"info":"登录失败!","url":"\/admin\/login\/"}
把双引号换成单引号试试

#5


返回的时候把json换成json_encode试试吧

#1


url:url,    你的url地址不对吧   url:"/admin/login"

#2


url不对不就返回不来json数据了

#3


在后台吧,获得的参数看一下,是不是你想要的那种。。

#4


{"status":0,"info":"登录失败!","url":"\/admin\/login\/"}
把双引号换成单引号试试

#5


返回的时候把json换成json_encode试试吧