2

如何使用 ParsleyJS 验证模式弹出窗口中的输入字段?

我已经在布局页面中有一个错误容器,适用于页面级输入字段。我想验证模式弹出窗口中的输入字段,并且错误消息也应该显示在弹出窗口中。

4

2 回答 2

3

要在特定的 Modal 中显示验证错误,您需要data attribute在输入元素上使用它:

data-parsley-errors-container="#modal_div_error_container"

这是您可以验证您的输入字段中的方法Modal <div>

JS:

$(function(){
    var parsley_valiation_options = {
         //errorsWrapper: '',
         errorTemplate: '<span class="error-msg"></span>',
         errorClass: 'error',
    }
    //check if modal_div element exists on the page
    if ($('#modal_div').length > 0) {

        //Attach Parsley validation to the modal input elements
        $('#modal_div input').parsley(parsley_valiation_options);

        //On modal submit button click, validate all the input fields
        $('#modal_div_submit_button').click(function(event) {
            event.preventDefault();

            var isValid = true;

            $('#modal_div input').each(function(){
                if($(this).parsley().validate() !== true)
                    isValid = false;
            })

            if(isValid) {
                alert("All fields are validated !");
            }
        });
    }
});

HTML:

<!-- Modal -->
<div id="modal_div">
    <!-- Modal div error container (Validation error messages will display here)-->
    <div id="modal_div_error_container"></div>


    <label for="name">
        Name (should be alphanumeric and min length: 7)
    </label>

    <input type="text" id="name" name="name" data-parsley-minlength="7" data-parsley-minlength-message="Name must be at least 7 characters" data-parsley-required="true" data-parsley-errors-container="#modal_div_error_container"/>

    <button type="submit" id="modal_div_submit_button">Submit</button>
</div>
于 2017-06-30T05:25:12.067 回答
-1

您需要将按钮类型用作“提交”而不是“按钮”。那么这可能会解决您的问题。

于 2020-10-08T12:31:49.007 回答