【问题标题】:remote rule message in parsley.jsparsley.js 中的远程规则消息
【发布时间】:2014-05-08 15:22:46
【问题描述】:

也许这是最愚蠢的问题,但我真的不知道如何解决这个问题。

我正在使用 parsley.js,并使用 parsley 的数据远程进行了密码字段验证:

查看sn-p:

<form data-parsley-validate novalidate class="form-horizontal group-border-dashed" id= "form-val" role="form" action="{site_url()}admin/checkPass" method="post" enctype="multipart/form-data"> 
  <div class="form-group"> 
    <div class="col-sm-4">
      <label>Contrase&ntilde;a Actual</label>
    </div>
    <div class="col-sm-7">
      <input id="actualPass" type="password" name="actualPass" data-parsley-remote="{site_url()}admin/checkPass" data-parsley-remote-options="POST" data-remote-datatype="jsonp" class="form-control" required>
    </div>   
  </div> 

在我的 admin.php 上:

public function checkPass(){
  if (isset($_POST['actualPass'])) {
    $passMd5 = md5($_POST['actualPass']);
    $pass = ($this->data['actualUserBack']->user_password);
    if ($passMd5 == $pass) {
      echo json_encode(true);
    }else{
      echo json_encode(false);
    }
  }
 }

我有其他字段(新密码和重新输入新密码)与这个欧芹的验证超级配合。当您输入错误的密码时,会出现一条红色消息。

我想要的是在我进行的第一次验证中带有自定义消息的同一个红色框。从 admin.php/checkPass 我只在空白页中返回 true 和 false。

在这种情况下如何使用 parsley 验证格式?

我在这里附上图片:

显示第一个 checkPass 函数的内容:image 1

我希望它看起来如何:image 2

如何发送数据?我需要修改或添加什么?谢谢!

【问题讨论】:

    标签: javascript php json parsley.js


    【解决方案1】:

    你有两种可能:

    • 修改您的后端脚本以不再返回 true/false 结果,而是返回 200400 状态代码。 Parsley 远程验证器默认确认 200 响应为良好验证,而所有其他响应为失败

    • 定义您自己的 parsley 远程验证器(请参阅此处的自定义远程验证器部分:http://parsleyjs.org/doc/index.html#remote),您将不再检查响应状态而是响应内容,寻找您的布尔答案.

    希望有所帮助。

    最好的

    【讨论】:

      猜你喜欢
      • 2020-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-28
      相关资源
      最近更新 更多