gpt4 book ai didi

javascript - 如果文本框输入值发生变化,则验证该字段...但是如果... Javascript

转载 作者:行者123 更新时间:2023-12-03 10:42:48 24 4
gpt4 key购买 nike

我正在尝试使用 formvalidation.io 中的 formvalidator 来验证一些字段,但在使用它时遇到了一些问题。我需要查明文本框(日期、电话、电子邮件)是否有值(用户填写了文本框)并验证该字段。但如果用户未填写文本框,则不验证该字段。用户可能开始填写文本框,然后删除其内容,如果他们这样做,则不应验证该字段。谁能帮我解决这个问题吗?

我尝试了一些不同的技术,例如 addEventListener 等,但我还没有完全理解我需要的方式。

这是我目前拥有的示例。

   $("#Q_dob_text").change(function () {
var dob = document.getElementById('Q_dob_text').value;
if (dob !== '') {
$('#registry').formValidation({
framework: 'bootstrap',
icon: {
valid: 'glyphicon glyphicon-ok',
invalid: 'glyphicon glyphicon-remove',
validating: 'glyphicon glyphicon-refresh'
},
fields: {
dob: {
validators: {
date: {
format: 'MM/DD/YYYY',
message: 'The value is not a valid date'
}
}
}
}
});
}
});

我也尝试过这种变化......

 document.getElementById('Q_date_text').addEventListener("keydown", dateFx);
function dateFx() {
var date = document.getElementById('Q_date_text');
if (date !== '') {
$('#registry').formValidation({
framework: 'bootstrap',
icon: {
valid: 'glyphicon glyphicon-ok',
invalid: 'glyphicon glyphicon-remove',
validating: 'glyphicon glyphicon-refresh'
},
fields: {
date: {
validators: {
date: {
format: 'MM/DD/YYYY',
message: 'The value is not a valid date'
}
}
}
}
});
}
}

非常感谢任何帮助!

最佳答案

问题在于 .formValidation 调用初始化(绑定(bind))插件以始终进行验证,因此一旦您运行该代码一次,它将始终继续工作(即使用户删除输入的文本)。

您真正想做的是初始化它一次,然后更新它的验证设置(在 validators 设置中)以使其不验证 dob (从您的第一个例如)如果它是空的。您可以通过调用“updateOption”或“removeField”来执行此操作,请参阅 documentation .

关于javascript - 如果文本框输入值发生变化,则验证该字段...但是如果... Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28698329/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com