Php Jquery远程验证将1显示为错误消息

Php Jquery远程验证将1显示为错误消息,php,jquery,jquery-validate,Php,Jquery,Jquery Validate,这是我的客户端验证脚本: jQuery('#myForm_members').validate({ rules:{ user_userpassword2:{equalTo:'#user_userpassword'}, user_username: {required: true,remote: {url:'option/members/member.php?task=

这是我的客户端验证脚本:

 jQuery('#myForm_members').validate({
        rules:{
            user_userpassword2:{equalTo:'#user_userpassword'},
            user_username: {required: true,remote: 
                               {url:'option/members/member.php?task=check_user_name',type:'post',async: false}}            
        },
        messages:{
            user_userpassword2:{equalTo:'Password mismatched.'},
            user_username:{remote:'User name exists.'}            
        }
        });
服务器端脚本:

    $num_rows=$this->count_rows($sql);
    if($num_rows>0)
        echo 0;
    else
        echo 1; 
当此验证返回false时,工作正常

但是当这个验证返回true时,它不起作用,返回1作为错误 试试:

header('content-type: application/json; charset=utf-8'); 
if($r>0)
    echo json_encode( false );
else
    echo json_encode( true );

您是否尝试过从php脚本中删除“echo 1”案例?当答案为非零时,jQuery的validate()很可能只显示它从服务器端脚本接收到的内容。是的,我打印了json_encode(true),就像@Max在下面解释的那样,这很有效。