【问题标题】:Parsley v2.0.0-rc2 binding on non form element from javascriptParsley v2.0.0-rc2 从 javascript 绑定到非表单元素
【发布时间】:2023-03-23 04:41:01
【问题描述】:

如何将 parsley.js v2.0.0-rc2 绑定到非表单元素(例如 div)并从 js 更改默认错误容器? 在我的情况下,我需要错误低于经过验证的元素父级。

【问题讨论】:

    标签: jquery validation parsley.js


    【解决方案1】:

    1) 如果您想绑定分组在 div 内的输入,只需在 div 上添加data-parsley-validate。它将被视为一个包含其字段的表单。

    2) 关于错误消息,您可以像这样利用this config function

    <script type="text/javascript">
        window.ParsleyConfig = {
            errorsContainer: function (parsleyField) {
                return parsleyField.$element.parent().parent();
            }
        };
    </script>
    

    在调用 parsley.js 之前放置会告诉 ParsleyUI 追加错误消息到每个字段的祖父母。

    【讨论】:

    • 但是,如果我在 Layout 中包含被多个页面使用的欧芹,并且我需要为不同的页面使用不同的容器,该怎么办?我知道我可以在每个特定页面上包含欧芹并这样做,但还有其他方法吗?
    • 您可以在本地执行此技巧,将 ParsleyConfig 上面的对象直接传递给 $('#element').parsley(ParsleyConfig) (并确保将 data-parsley-validate 删除到您的表单中)
    • 但是 parsley 绑定在
      上,而不是 form,如果我删除 data-parsley-validate 我会得到“未捕获的 TypeError:Object # has no method 'validate'”
    • 嗯,我明白了。然后你必须添加 window.Parsley.autoBind = false;
    • 所以我需要设置window.Parsley.autoBind = false;并将 data-parsley-validate attr 留在
      ?
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签