相关疑难解决方法(0)

jquery验证 - 远程方法在有效后不会触发

email1: {
                    required: true,
                    blacklist: true,
                    beanEmailValidator: true,
                    minlength: 6,
                    maxlength: 70,
                    remote: {
                        type: "GET",
                        url: llbFieldValJSONURL,
                        data: {
                              fieldData : function() {
                                return $("#enterEmail").val();
                              }                           
                         },
                        dataType:"json",
                        dataFilter: function(data) {
                            var json = jQuery.parseJSON(data);
                            if(json.error == "true") {
                                return "\"" + json.errorMessage + "\"";
                            } else {
                                return success;

                            }

                        }
                    }

                }
Run Code Online (Sandbox Code Playgroud)

此函数检查用户名的唯一性,如果不是唯一的,则返回错误.问题是远程方法在有效后不会进行任何额外的调用.我需要它在每次输入/更改值时触发.

例如,如果我输入3个非唯一用户名,则每次都进行调用.如果我输入唯一的用户名,则呼叫正确,用户名恢复为有效.所以该领域是有效的.现在,如果我输入另一个非唯一(无效)用户名,则远程方法不会再次触发.

想知道它是否以某种方式缓存响应?

无效(非唯一)响应:

{"error":"true","errorMessage":"<b>The User Name you chose is already in use.</b>  Please enter another name."}
Run Code Online (Sandbox Code Playgroud)

有效(唯一)响应:

{"error":"false","errorMessage":""}
Run Code Online (Sandbox Code Playgroud)

编辑

在SO上看到这个:

/sf/answers/127516721/

$("#site").change(function() {
  $("#email").removeData("previousValue"); …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-validate

10
推荐指数
2
解决办法
8968
查看次数

标签 统计

jquery ×1

jquery-validate ×1