动态更改字段的欧芹规则
Dynamically change parsley rules for a field
我有一个可以简单描述的任务:我有一个下拉列表,比如说,有 3 个位置。还有一个字段。
- 如果选择选项 0,则不需要对字段进行验证。
- 如果选择选项 1,则字段应为数字。
- 如果选择选项 2,则字段应匹配某些正则表达式。
如何使用 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();
});
但是我在这里更改了整个欧芹的全局状态,而我只想更改一个字段验证。
另一种选择是编写自定义验证程序,但如果可能,我想重用标准电子邮件和其他验证规则和消息。
只需更改字段属性并trigger('input')
就可以了。
我有一个可以简单描述的任务:我有一个下拉列表,比如说,有 3 个位置。还有一个字段。
- 如果选择选项 0,则不需要对字段进行验证。
- 如果选择选项 1,则字段应为数字。
- 如果选择选项 2,则字段应匹配某些正则表达式。
如何使用 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();
});
但是我在这里更改了整个欧芹的全局状态,而我只想更改一个字段验证。
另一种选择是编写自定义验证程序,但如果可能,我想重用标准电子邮件和其他验证规则和消息。
只需更改字段属性并trigger('input')
就可以了。