将删除和箭头键添加到正则表达式中

2024-05-17

我正在执行日期验证,现在我正在执行该用户只能输入numbers ,/and backspace所以现在我想在正则表达式中添加 2 个键。我想添加delete and arrow keys那么我应该在正则表达式中做什么改变。这是我的代码

<input type="text" id="date" name="date" onkeypress="check(event,this);"  />

这是我的 JavaScript 代码

<script type="text/javascript">

function check(evt, id)
{

 var value = id.value;

 var theEvent = evt || window.event;
 var key = theEvent.keyCode || theEvent.which;
 key = String.fromCharCode( key );

 var regex = /[0-9|\b|/]/;

 if( !regex.test(key)) 
 {
  theEvent.returnValue = false;

  if(theEvent.preventDefault) 
   theEvent.preventDefault();
 }   
}



</script>

感谢等待您的帮助。


如果按下箭头、删除和退格键,您可以跳过输入验证

function check(evt, id)
{

 var value = id.value;

 var theEvent = evt || window.event;
 var key = theEvent.keyCode || theEvent.which;

 // Don't validate the input if below arrow, delete and backspace keys were pressed 
 if(key == 37 || key == 38 || key == 39 || key == 40 || key == 8 || key == 46) { // Left / Up / Right / Down Arrow, Backspace, Delete keys
     return;
 }

 key = String.fromCharCode( key );
 var regex = /[0-9|/]/;

 if( !regex.test(key)) 
 {
  theEvent.returnValue = false;

  if(theEvent.preventDefault) 
   theEvent.preventDefault();
 }   
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将删除和箭头键添加到正则表达式中 的相关文章

随机推荐

  • node.js通过aws-sdk模块重命名s3对象

    是否可以通过重命名 s3 上的对象aws sdk https www npmjs com package aws sdk 我找不到解决方法 也许有一个临时解决方案 我想我会回答 因为没有人回答过 这个应该有用 create a new s3
  • 实体框架 - 外键上的双向一对一关系

    我有两个实体 例如 Hat 和 Owner Owner Hat 0 1 1 ID ID Name Size HatId OwnerId 每个主人都有他的帽子 有些帽子没有主人 我创建了模型 public class Owner Key pu
  • 文件正被另一个进程使用。原因,以及解决办法?

    该进程无法访问该文件 abc log 因为它正在被使用 另一个过程 你好 我偶尔在我的应用程序中看到这个异常 但我仍在尝试修复它 希望我能从 stackoverflow 中获得一些见解 在我的应用程序中 我定义了一个 WriteToLog
  • 代号一 - 正确使用选择器

    我试图对选择器的使用提出一个明确的问题 因为我之前的问题不够清楚 代号一 Picker 的 addActionListener https stackoverflow com questions 48758348 codename one
  • 类方法作为构造函数和继承

    问题很简单 如果一个班B继承一个类A并想要重写用作构造函数的 类方法 我猜你称其为 工厂方法 问题是B classmethod会想要重复使用A classmethod 但随后它必须创建类 A 的实例 同时它对类 A 进行子类化 因为作为类方
  • 在 Android 中创建和使用 9 补丁图像

    我最近听说了 9 补丁图像 我知道它是 9 平铺的并且是可拉伸的 我想了解更多 如何创建 9 块图像 有什么工具吗 我可以通过 AndroidSDK 或代码创建它吗 9 patch 相对于普通 png 的主要优点 它是否可以根据屏幕动态 自
  • 单击 RecyclerView 内的 ImageView 时更改图像资源

    每当我单击它时 单击图像 而不是项目 我都会尝试更改回收器视图内特定位置的设备图像资源 我尝试将 setOnClickListener 放入 onBindViewHolder 方法中 但只有最后一个项目受到影响 这是我的回收者视图 http
  • 在 x86 汇编中将 64 位常量移至内存

    我正在使用 Intel x64 程序集 NASM 编译器 尝试将 0x4000000000000000 常量移至内存 该常量在 ieee 754 标准双精度中应等于 2 0 我正在使用的代码是 define two 0x4000000000
  • Ruby require 'file' 不起作用,但 require './file' 可以。为什么?

    我有一个充满 ruby 文件的文件夹 当我尝试使用位于同一目录中的另一个文件中的一个文件时require file 我得到一个LoadError但是当我使用require file 一切正常 有人可以向我解释为什么会发生这种情况吗 如果有什
  • 在运行时有条件地实例化模板

    我有一个模板类 template
  • 删除派生数据文件夹后,Xcode 不断重新创建派生数据文件夹

    自动完成功能在 Xcode 6 中不再起作用 我四处搜索 发现删除派生数据文件夹可以解决此问题 每次我删除它时 它都会回来 然后就不会再自动完成了 有什么建议么 Thanks 没关系 我解决了这个问题 我没有声明需要在类内的方法中使用的变量
  • 确定我的 Silverlight 应用程序的版本

    我正在尝试确定 Silverlight 应用程序的版本号 目前我正在使用 string name Assembly GetExecutingAssembly FullName AssemblyName asmName new Assembl
  • 完整编译时出现 vb6 用户定义类型未定义错误

    我有一些很长时间没有编译的 vb6 代码 最后一次编译正在生产中 现在我收到一个错误 用户定义类型未定义 当我进行完整编译时 我确信有一个参考文献缺失 但没有突出显示的代码 我似乎无法找到可能丢失的参考资料 关于我可以做什么来找到丢失的参考
  • webm视频转换API

    有谁知道用于将视频转换为谷歌新的 WebM 视频格式的 原型 c API 谷歌快速搜索显示 不 但是编码器示例 http www webmproject org tools vp8 sdk example simple encoder ht
  • 为什么重载方法的类型提升优先于可变参数

    public class Test public static void printValue int i int j int k System out println int public static void printValue b
  • 点击浏览器后退按钮时如何刷新 ASP .NET MVC 页面

    我刚刚发现 当我单击任何 ASP NET MVC 页面上的浏览器后退按钮时 没有任何反应 并且页面不会更新 并且只有当您单击 F5 时才会更新 主要问题是我对页面的 DOM 进行了一些更改 即添加表格行 选择单选按钮等 当我通过点击浏览器后
  • 单元测试序列化有什么要点吗?

    我有一个类 它序列化一组我想要进行单元测试的对象 使用 XML 序列化 我的问题是 感觉我将测试 XML 序列化的 NET 实现 而不是任何有用的东西 我还有一个先有鸡还是先有蛋的场景 为了测试 Reader 我需要一个由 Writer 生
  • SQL UPDATE 语句根据另一个现有行更新列

    基本上我有一个与下表具有相似格式的表格 我想做的是根据这个逻辑更新 Col4 如果 Col2 为空 则用 Col3 更新 Col4 如果 Col2 不为 null 则在 Col1 中查找与 Col2 中的值匹配的值 使用 col3 中的相应
  • Tesseract OCR - 手写字体

    我正在尝试使用Tesseract OCR http code google com p tesseract ocr 检测其中包含纯文本的图像文本 但这些文本具有名为的手写字体Journal Example 结果不是最好的 千里马 尺寸 宽
  • 将删除和箭头键添加到正则表达式中

    我正在执行日期验证 现在我正在执行该用户只能输入numbers and backspace所以现在我想在正则表达式中添加 2 个键 我想添加delete and arrow keys那么我应该在正则表达式中做什么改变 这是我的代码