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

时间:2013-02-20 08:58:27

标签: jquery jquery-validation-engine

我想使用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>

添加的字段如下:

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

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

知道如何解决这个或其他方法吗?

解决方法

使用简单的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;
}

仍然喜欢使用Jquery验证引擎

1 个答案:

答案 0 :(得分:7)

使用validateNonVisibleFields实例化JQuery验证

   <script>
    $(document).ready(function(){
        $("#formID").validationEngine({validateNonVisibleFields: true,
        updatePromptsPosition:true});

       });
    </script>

你仍然遇到Jquery / Javascript无法获得隐藏字段位置的问题。因此,使用样式可见性:隐藏。

<input name="hiddenq2" type="text" value="" class="validate[required]" jqtop="500" id="form-validation-field-1" style="visibility: hidden">

你仍然可能需要使用promptPosition选项稍微调整一下,但至少会出现一些东西。