动态更改字段的欧芹规则

Posted

技术标签:

【中文标题】动态更改字段的欧芹规则【英文标题】:Dynamically change parsley rules for a field 【发布时间】:2016-09-25 17:32:35 【问题描述】:

我有一个可以简单描述的任务:我有一个下拉菜单,比如 3 个位置。还有一个字段。

如果选择了 option0,则不需要验证字段。 如果选择了 option1,则字段应为数字。 如果选择了 option2,则字段应匹配某个正则表达式。

如何使用Parsley 实现此行为?

我目前发现的唯一方法是删除整个欧芹,更改 html,然后重新初始化:

$(myDropDown).change(function() 
    $('form').parsley().destroy();

    var input = $(this).parent().find(".my-cool-input");
    //changing input attributes based on selected value

    //reinitialize parsley
    $('form').parsley();
);

但是在这里我改变了整个欧芹的全局状态,而我只想改变一个字段验证。

另一种选择是编写自定义验证器,但如果可能的话,我想重用标准电子邮件和其他验证规则和消息。

【问题讨论】:

【参考方案1】:

只需更改字段属性和trigger('input')就可以了。

【讨论】:

以上是关于动态更改字段的欧芹规则的主要内容,如果未能解决你的问题,请参考以下文章

带有回调的欧芹验证不起作用

JavaScript:动态更改数据范围规则的值

如何在 devexpress 中向表单字段添加动态验证规则

欧芹为空字段触发错误

Firestore 规则 - 动态路径

如何为 Form.Item 验证动态设置所需的规则