使用Javascript仅允许文本框中的数值

faw*_*wad 3 javascript

我想只允许在文本中输入数值,如果用户输入字母字符,它应该警告用户.有关优化和简短的JavaScript代码的任何建议吗?

Nim*_*sky 7

function isNumber(n) {
  return !isNaN(parseFloat(n)) && isFinite(n);
}
Run Code Online (Sandbox Code Playgroud)

这里开始

  • 你为什么不把问题标记为重复呢? (3认同)

Cha*_*mal 5

使用以下代码

function numericFilter(txb) {
   txb.value = txb.value.replace(/[^\0-9]/ig, "");
}
Run Code Online (Sandbox Code Playgroud)

在密钥上调用它

<input type="text" onKeyUp="numericFilter(this);" />
Run Code Online (Sandbox Code Playgroud)

  • 对于上帝的爱(和专业的感觉网站),不要使用`onkeyup`.请参阅http://whattheheadsaid.com/2010/09/effectively-detecting-user-input-in-javascript. (3认同)