Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 需要使用Basistance验证和json检查用户名的帮助吗_Jquery_Json_Validation - Fatal编程技术网

Jquery 需要使用Basistance验证和json检查用户名的帮助吗

Jquery 需要使用Basistance验证和json检查用户名的帮助吗,jquery,json,validation,Jquery,Json,Validation,我目前正在表单上使用jquery Basistance验证器。我试图添加一个新函数,该函数将检查(使用json)用户名是否已经存在。我认为我没有走对这条路。这是我的密码: jQuery.metadata.setType("attr", "validate"); jQuery.validator.addMethod("uniqueUsername", function(value) { jQuery.getJSON("/index.php?option=com_json&f

我目前正在表单上使用jquery Basistance验证器。我试图添加一个新函数,该函数将检查(使用json)用户名是否已经存在。我认为我没有走对这条路。这是我的密码:

  jQuery.metadata.setType("attr", "validate");
  jQuery.validator.addMethod("uniqueUsername", function(value) {
    jQuery.getJSON("/index.php?option=com_json&format=raw", { task: "checkUsername", username: value }, function(data) {
      var response = eval(data);
      if (response == 1) {
        //does exist
      } else {
        //does not exist
      };
      alert(response);
    });
  }, "This username is currently unavailable.");
  jQuery("#adminForm").validate();
在我输入用户名之前,它会立即检查并提醒我的回复。无论从json返回哪个响应,它都会给出错误


如果有人已经这样做了,或者知道如何在Basistance中使用json检查,我们将不胜感激:)

对服务器的调用是异步的。因此,您的函数会立即返回到验证插件

尝试检查验证函数中的标志(例如isUserNameValid)。然后将ajax调用附加到“change”事件以进行验证,并将标志设置为相关值。立即将标志设置为false,然后执行ajax调用


HTH

验证插件内置了一个远程方法来实现这类功能。我建议您使用它并从它调用的方法返回true/false

请参阅以下文档: