javascript - Formvalidation.io:某个字段有效时的事件
问题描述
我有一个关于Formvalidation.io的初学者问题。也许它甚至不是特定于该库的,但通常与 Javascript 更相关。
我想在某个字段(假设它的名称是postcode
)经过验证并且有效后禁用验证器。但是,如果我的表单的任何字段有效(不仅是特定字段),我的所有方法都会导致验证器未被禁用或被禁用。
我使用core.field.valid事件和库的文档状态:
event 参数表示字段名称。
我不确定这是怎么发生的。
我试过了:
document.addEventListener('DOMContentLoaded', function(e) {
const fv = FormValidation.formValidation(
document.getElementById('adminForm'),
{
fields: {
postcode: {
validators: {
notEmpty: {
message: 'Please enter a postcode.'
}
}
}
},
plugins: {
submitButton: new FormValidation.plugins.SubmitButton(),
defaultSubmit: new FormValidation.plugins.DefaultSubmit(),
trigger: new FormValidation.plugins.Trigger({
event: {
postcode: 'change',
}
})
}
}
);
fv.on('core.field.valid', function(e) {
if (e.field === 'postcode') {
fv.disableValidator('postcode');
}
});
});
但是,即使该字段已验证且有效,if 条件也不为真。(试图从这里给出的例子中调整它)
我还尝试了我在on() 方法的文档中找到的内容(因为它指出function(field)
:“字段是无效字段的名称”):
const validFieldHandler = function(postcode) {
fv.disableValidator('postcode');
};
fv.on('core.field.valid', validFieldHandler);
但是,如果表单的任何字段有效,则以下内容(可能预期)会禁用验证器。
fv.on('core.field.valid', function(e) {
fv.disableValidator('postcode');
});
感谢您提供的任何建议!这是我在这里的第一个问题,所以如果您需要更多信息,请告诉我!
最好的问候,塞巴斯蒂安
解决方案
自己找到了解决方案:
fv.on('core.field.valid', function(field) {
if (field === 'postcode') {
fv.disableValidator('postcode');
}
});
推荐阅读
- sql-server - 使用 CSV 数据提取表字段
- python - 将辅助变量传递给数据类 __init__ 而不分配它们
- r - 从适合 purrr 的模型中提取残差
- r - 如何生成包含多个不同长度(行)的个体的样本时间序列数据集?
- elasticsearch - 停止启动具有所有主分片的弹性搜索实例
- wordpress - 如何在默认情况下取消选中 Woocommerce 结帐页面上的“运送到不同地址”复选框
- python - 有效地从列表中删除重复项
- python - 装饰一个函数以创建一个将关键字和位置参数拆分为其他两个方法的类
- java - 为我的骑士之旅的前 32 步实施warndorffs 规则,然后使用堆栈和蛮力回溯
- python - 具有包含空格(路径)的变量的子进程