javascript - 如何防止在字段中输入某些字符?

标签 javascript arrays

我有一个出生日期字段。如何防止用户输入数字和正斜杠 (/) 之外的任何内容?

下面是更好地解释该问题的代码。

    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/

相关文章:

javascript - 嵌套数组映射

java - 如何调用 readStudents 方法?

python - TypeError : list indices must be integers or slices, not str when parsing lists

javascript - 使用 React 正确更新组件状态中的数组

javascript - A 帧 : how to change image using javascript

javascript - tinyMCE 粘贴为单词

C:子范围内的反向数组

javascript - 从 Angularjs REST 资源发送基于文件的虚拟数据

javascript - 创建一个类并调用它的属性 (javascript)

c - 为什么 C 输出内存位置/指针而不是数组的值?