gpt4 book ai didi

javascript - onKeyUp 验证

转载 作者:行者123 更新时间:2023-11-30 17:49:57 27 4
gpt4 key购买 nike

我需要在 keyup 和 onsubmit 上进行验证。我有一个名为 CVV 的字段,它接受 3 位或 4 位数字,所以我使用的是“^(d){3,4}$”。当我在 onsubmit 函数中执行此模式时,此模式正常工作,但在 onkeyup 函数中,我总是得到 false,即使我输入 3 位数字。

<input type="text" onkeyup="callonkeyup(this,'First Name','^(d){3,4}$')" value="First Name">

function callonkeyup(tag,defaultValue,pattern){
var isValidate = validate(pattern,trim(tag.value),defaultValue);
console.log("==isValidate=="+isValidate+"==tag.value=="+tag.value+"===pattern==="+pattern);

}

function validate(pattern,value,defaultVal){
var returnValue = false;
if(value && value != defaultVal){
while(pattern.indexOf('\\\\') != -1) {
pattern = pattern.replace('\\\\', "\\");
}
var testPattern = new RegExp(pattern,"");
if (testPattern.test(value)){
returnValue = true;
}else{
returnValue = false;
}
}
return returnValue;
}

function trim(value){
return value.toString().replace(/^\s+|\s+$/g,'');
}

最佳答案

Working DEMO

您需要转义反斜杠 (\),因此您的正则表达式应该是 ^\\d{3,4}$ 而不是 ^(d) {3,4}$

关于javascript - onKeyUp 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19243054/

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