标签: jquery-validation-engine

jQuery表单验证引擎在equals上无法正常工作

我刚刚下载了jQuery插件表单验证引擎.到目前为止,一切都运行良好,直到我检查密码是否匹配.如果密码字段和确认密码字段都留空,则不会出现错误消息"字段不匹配",这很好,因为它们匹配.但是,当我在密码文本框中键入内容并在确认文本框中键入相同的密码时,错误消息会显示"字段不匹配".

HTML:

<form id = "signup">
  <label>Password:</label>
  <input type = "password" name = "txtPassword" id = "txtPassword" class = "validate[required,minSize[6],maxSize[50]]"/>
  <label>Confirm Password:</label>
  <input type = "password" name = "txtCPassword" id = "txtCPassword" class = "validate[required,equals[txtPassword]]"/>
</form>
Run Code Online (Sandbox Code Playgroud)

我的JS档案:

$(document).ready(function(){
    $("#signup").validateEngine();
});
Run Code Online (Sandbox Code Playgroud)

在我的HTML文件中,我有验证css样式的链接,以及验证引擎和en语言.

forms jquery jquery-validation-engine

5
推荐指数
1
解决办法
7122
查看次数

有效时验证错误消息不会隐藏

更新2: 我发现输入的标题由于某种原因被显示为错误消息,我使用了ignoreTitle:true来确保他的标题没有被显示为错误消息。

但是,现在我的新问题是,一旦输入有效的电子邮件地址,该错误消息仍不会消失。

如何解决我的验证错误消息,以便在输入字段有效时将其隐藏?

我是jQuery Validation的新手,我似乎无法弄清楚这个问题。在此问题上的任何帮助将不胜感激。谢谢!

更新内容2:http//jsfiddle.net/psbq8vkj/9/

JQUERY:

$(".guestlist-form").validate({
ignoreTitle: true,
    errorClass: "error-class",
    validClass: "valid-class",  
    rules: {
            emailaddress: {
                required: true,
                email: "Please enter your correct email address."
            }
    },
  errorPlacement: function(error, element) {
    $(".myerror").html('');  // clears previous error messages
    error.appendTo( ".myerror");
  },

   messages: {       
    emailaddress: {
                required: "Please enter your full email address."           
            }     
    }
 });
Run Code Online (Sandbox Code Playgroud)

HTML:

<div id="updates" class="container-fluid">
    <center>
        <div class="title"><br />
            <span class="signuptitle">Sign up to our daily newsletter.</span><br/>
        </div>
        <div …
Run Code Online (Sandbox Code Playgroud)

jquery html5 jquery-validate css3 jquery-validation-engine

5
推荐指数
1
解决办法
5228
查看次数

验证引擎一对一错误显示

我更喜欢Jquery ValidationEngine而不是Bassistance验证。我的问题是

我们不会在每行中使用一个输入,其中某些输入在同一行中,例如名字:[]姓氏:[]

当错误弹出时,错误消息重叠并且看起来很丑。

我可以对验证引擎做些什么,它仅显示最重要的错误,并且在修复错误并且用户尝试提交表单时,其他最重要的错误(如果存在)将显示在那里。

现实生活中的示例:-例如,名字和姓氏都是必填项,并且两个字段均为空,用户尝试提交,但是他只看到一个错误,将名字键入为“ Asif”,然后尝试立即提交他在“姓氏”字段中看到第二个错误,他输入了姓氏“ Ashraf”,然后表格就可以使用了。

我们能做到吗?

jquery jquery-validation-engine

4
推荐指数
2
解决办法
3897
查看次数

使用validationengine插件时出现错误提示位置问题(位置绝对值)

我使用Position Absolute的验证引擎来验证表单上的值.

问题是在验证时,错误提示不会像预期的那样附加到文本框(输入类型:文本).我知道问题在于我给文本框提供的margin-top但是我不能改变它.此处提供了示例代码段...

HTML:

<form id="frmTest" style="position:relative">
    <div id="divContents" style="position:relative; overflow-y:auto; overflow-x:none;">
        <div class="row1">
            <span>FName:</span>
            <input id="txtFName" data-prompt-position="bottomRight" class="validate[required] text-input" tabindex="1" />
        </div>
        <div class="row2">
            <span>LName:</span>
            <input id="txtLName" class="validate[required] text-input" tabindex="2" />
        </div>
        <div class="row3">
            <span>Age:</span>
            <input id="txtAge" class="validate[required, custom[integer],min[1]] text-input" tabindex="3" />
        </div>
    </div>

        <br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
    <input type="submit" id="btnSubmit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)

JS:

$('#frmTest').validationEngine();

$('#txtFName').focus();

$('#btnSubmit').click(function(){
    return $('#frmTest').validationEngine();
});
Run Code Online (Sandbox Code Playgroud)

jsFiddle.

我创建的div只是样本,但在实时环境中,它们是可折叠的div.此外,我不想为每个输入字段硬编码数据提示位置值,因为每个表单中有超过100个字段.所以我正在寻找处理这个问题的通用方法(我知道这可以通过CSS但不知道如何?) …

css jquery jquery-validation-engine

4
推荐指数
1
解决办法
1万
查看次数

正则表达式意外令牌

当我将这个正则表达式添加到验证引擎时,我得到一个javascript错误:"意外令牌",似乎正则表达式是错误的,因为它用红色下划线,为什么?

"time1":{    
   "regex": ^([0-9]|0[0-9]|1[0-3]|2[0-3]):[0-5][0-9]$,
   "alertText": "* Invalid Time"
}
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-validation-engine

4
推荐指数
1
解决办法
7210
查看次数

带有参数的JQuery验证引擎中的自定义函数

我想为JQuery Validation Engine编写一个新的验证规则.你似乎所要做的就是编写一个这样的函数:

"myNewRule":
           "func": function(field, rules, i, options){
                //new validation function
           },
           "alertText": "message to be displayed if something goes wrong"
},
Run Code Online (Sandbox Code Playgroud)

现在,有谁知道如何访问字段ID(或名称)或如何传递参数?我需要验证字段B的值是否小于字段A,因此知道我应该将哪个字段与...进行比较非常重要.

validation jquery jquery-validation-engine

4
推荐指数
1
解决办法
2万
查看次数

无法在jQuery验证引擎中指定自定义错误

我正在摆弄这里记录的jQuery验证引擎

我已在本地下载了所有JS文件.并创建了一个包含单个必需文本框字段的简单表单.

问题1

我无法为此必需规则指定自定义错误(即使我已指定custom-error-message选项).相反,它显示默认消息"此字段是必需的".我写了这个代码示例(所示的帮助下在这里)的git的,但它不工作.请指出哪里出错了.(我想用JS对象文字来代替使用等效的html5属性.)

我的代码:

<html>
<head>      
    <script type="text/javascript" src="scripts/jquery-1.9.0.min.js"></script>      
    <script type="text/javascript" src="scripts/jquery.validationEngine-en.js"></script>        
    <script type="text/javascript" src="scripts/jquery.validationEngine.js"> </script>      
    <link type="text/css" rel="stylesheet"  href="styles/validationEngine.jquery.css"  />   
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    <script type="text/javascript">
            $(document).ready(function(){
                $("#form1").validationEngine({'custom_error_messages' : {                                
                            '#username':{
                                'required':{
                                    'message':"Hey you cannot leave this field blank."
                                }
                            }     
                        }
                    });                         
                });

    </script>
</head>
<body>
    <form id="form1">
        <br /><br />
        <h2>Form 1</h2>
        Username: <input id="#username" type="text" class="validate[required]" ></input> <br />     
    </form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

问题2

如何指定应用于JS中哪个元素的规则,而不是在html中指定类值.我宁愿使用干净的不显眼的HTML,而不是在HTML中混合验证特定的东西.这可以通过jQuery Validation插件实现,如下所示:

            $("#register-form").validate({ …

jquery jquery-validation-engine

3
推荐指数
1
解决办法
7888
查看次数

jQuery-Validation-Engine - 验证文件MIME类型

我想使用jQuery-Validation-Engine来验证文件输入的MIME类型.我怎么能这样做?

我的方法是这样的:

function checkMIME(field, rules, i, options){
    var file = $("#userfile")[0].files[0];
    var MimeFilter = /^(image\/bmp|image\/gif|image\/jpeg|image\/png|image\/tiff)$/i;
    if (! MimeFilter.test(file.type)) {
     return options.allrules.validate2fields.alertText;
  }
}
Run Code Online (Sandbox Code Playgroud)

Thanx Kashuda

jquery-validation-engine

3
推荐指数
2
解决办法
7241
查看次数

jQuery Validationengine箭头没有显示

我在.NET中使用validationengine所以不要在某些页面上使用传统的class ="validate [required]",因为我在页面上有一些逻辑表单,并且不希望一次性验证整个表单而是使用以下内容:

$j(document).ready(function () {
     $j("#btnSave").click(function (e) {
         if ($j("#lstCustomerType").val() == "") {
             jQuery('#lstCustomerType').validationEngine('showPrompt', 'Please select a customer type', 'error', true);
     });
 });
Run Code Online (Sandbox Code Playgroud)

我遇到的唯一问题是showArrow参数似乎什么都不做.无论我尝试什么,箭头永远不会显示,我最终只在文本框上方弹出一个弹出窗口.在我使用class ="validate [required]"的页面上,箭头显示为预期.是否有人知道它是弹出窗口的手册或语法的限制,以使其工作?

jquery jquery-validation-engine

2
推荐指数
1
解决办法
3336
查看次数

JQuery验证引擎,用于动态添加隐藏的输入字段

我想使用JQuery Validation Engine插件来查看动态添加的隐藏输入字段.

提交表单时,必须至少有一个这样的字段.

它尝试使用groupRequired Validator实现此目的

http://posabsolute.github.com/jQuery-Validation-Engine/#validators/grouprequired

<link rel="stylesheet" href="css/validationEngine.jquery.css" type="text/css"/>
                     <script>
                    $(document).ready(function(){
                        $("#tagform").validationEngine();
                       });
                    </script>
        <form id="tagform">
               <input type="hidden" name="tags" id="tags-input" />
                    <input type="hidden" name="inc" value="locate">
                    <input type="hidden" class="validate[groupRequired[tagitem]]" name="validation">
                    <br><br>
                    <input type="submit" value="Save Tags">

        </form>
Run Code Online (Sandbox Code Playgroud)

添加字段看起来像:

 var formhtml ='<input type="hidden" name="tags[]" class="validate[groupRequired[tagitem]]" id="id'+itemid+'" parenttag="'+parent+'" value="'+itemid+'">';
                $("#tagform").append(formhtml);
Run Code Online (Sandbox Code Playgroud)

目前它根本不检查隐藏的字段.

任何想法如何解决这个或另一种方法?

解决方法

使用简单的javaskript onSubmit函数来检查标记的出现

function checkForm(form)
{
var count = $('input[name="tags[]"]').length;
if(count == 0 ) {
   alert("Select at least one tag");       
   return false;
}
alert ("Count " + count)
return true; …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-validation-engine

2
推荐指数
1
解决办法
6713
查看次数