我有一个出生日期字段。如何防止用户输入除数字和正斜杠 (/) 之外的任何内容?
下面是更好地解释该问题的代码。
if(/*the user types anything that is not a forward slash or number*/){
//remove it
}
我尝试过正则表达式,它适用于某些输入,但如果我输入类似等于 (=) 的内容,它仍然会提交表单
最佳答案
!isNaN(rec) 检查 char 是否为 Number,并且检查 rec 是否等于“/”。如果满足这些条件之一,那么我们返回rec
const str = '124sfsd325//24t#%$'
const date = str.split('').filter(rec => {
if (!isNaN(rec) || rec === '/') {
return rec
}
}).join('')
如果您想让这个解决方案更加灵活,请创建符号数组
const str = '124sfsd325//24t#%$'
const arrayOfSymbols = ['/', '#']
const date = str.split('').filter(rec => {
if (!isNaN(rec) || arrayOfSymbols.includes(rec)) {
return rec
}
}).join('')
关于javascript - 如何防止在字段中输入某些字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62609029/