3

我正在关注这篇文章以验证我的表单

我的问题是当我必须使用该remote方法时,例如remote: "check-username.php"

由于远程方法的文档对我来说不是很清楚,我会知道:

我需要如何在 php 脚本中构造我的 json 输出?

4

2 回答 2

15

要对 使用默认方法remote,远程页面必须以字符串值"true"或响应"false"

有效成功)必须是:

echo "true";

无效失败):

echo "false"; // this can be any false. eg: 0 , "" , NULL.

响应将被评估为 JSON。

要应用错误消息,除了默认的无效远程响应(“false”),将输入名称添加到验证器选项messages对象,如下所示。

rules:{
    username:{
        remote: "check-username.php"
    }
},   
messages:{
    username:{
        remote: jQuery.format('{0} is already in use, please choose a different name')
    }
}
于 2014-01-02T03:41:38.773 回答
1

You don't need JSON. You can put any text. For example you can

echo "success";

for passed validation, and enter validation message like:

echo "Username already exists.";

for failed validation.

In your callback do something like this:

remote: {
           url: "check-username.php" ,
           type: "post" ,
           data: {
              username: function() {
              return $("#username").val();
           },
           complete: function(data){
                if( data.responseText != "success" ) {
                   alert(data.responseText);
                   //handle failed validation
                }
             }
         }
于 2013-04-25T12:15:41.023 回答