如何使用jQuery应用正则表达式输入? [英] How to apply Regular Expression to input using jQuery?

查看:76
本文介绍了如何使用jQuery应用正则表达式输入?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这个代码强制用户只输入输入中的数字:

I have this code to force user to enter only numbers in input:

$("#Day").keyup(function()
{
 var test =new RegExp( "/\D/G");
 if(test.test($("#Day").val()))
     $("#Day").val(replace("/\D/G" , ""));
});

但它让我输入非数字,并且控制台中没有显示错误。

but it let me to type non-numbers and no error shown in console.

推荐答案

这有效:

JSFIDDLE: http://jsfiddle.net/4RWBU/

JSFIDDLE: http://jsfiddle.net/4RWBU/

我在某些方面编辑了原始代码。我将事件类型从 keyup 更改为 keydown 。如果我们使用 keydown ,我们实际上可以阻止从显示屏按下的键,但我不认为可以用 keyup实现(密钥已经显示)。

I edited your original code in some ways. I change the event type from keyup to keydown. We can actually prevent the key pressed from display if we use keydown but I don't think that is possible to achieve with keyup (the key would have already been displayed).

$("#Day").keydown(function(e)
{
  var test = /[0-9]/; //regex
  var value = String.fromCharCode(e.keyCode); //get the charcode and convert to char
  if (value.match(test)) { 
     return false; //dont display key if it is a number
  }       
});

这篇关于如何使用jQuery应用正则表达式输入?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆