【问题标题】:Jquery remote validation shows 1 as error messageJquery 远程验证显示 1 作为错误消息
【发布时间】:2012-08-02 06:18:58
【问题描述】:

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

 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 作为错误

【问题讨论】:

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

标签: php jquery jquery-validate


【解决方案1】:

尝试:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-18
    • 1970-01-01
    相关资源
    最近更新 更多