| 
 | 
 
 
发表于 2016-1-29 11:41:39
|
显示全部楼层
 
 
 
[折磨]我也遇到的相同的问题。不管是用echo输出json数据还是直接echo 出状态 ;view中都接收到了。但是还是不能根据返回的数据来判断。callback怎么接收返回ajax数据? 
//--------------------控制器---------------------------------- 
                public function ajax_check(){         
                        //判断是否是ajax传值 
//$_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest' 
                if(($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest'){ 
                        error('对不起,您访问的页面不存在!');         
                } 
                $username = $_POST['username_reg']; 
                $this->load->model('login_model'); 
                $status = $this->login_model->check($username); 
                if($status){ 
                        echo json_encode(0); 
                }else{ 
                        echo json_encode(1); 
                } 
        } 
} 
//-------------------------ajax判断用户名是否存在------------------------------------ 
$.post(site+'/index/register/ajax_check',{username_reg : username_reg},function(status){ 
                                if(status){ 
                                        msg = ""; 
                                        span.html(msg).removeClass('error'); 
                                        verificat.username_reg = true; 
                                }else{ 
                                        msg = '用户名已存在'; 
                                        span.html(msg).addClass('error'); 
                                        verificat.username_reg = false; 
                                        return; 
                                } 
                        },'json'); 
                                msg = ''; 
                                span.html(msg).removeClass('error'); 
                                verificat.username_reg = true; 
                });  
以上是我写的代码。但是callback里面的判断语句并没有执行。如果数据格式改成text用alert()判断能获取传过来的值。但是json不行。我同事说是我这不支持json数据格式。。。 |   
 
 
 
 |