我有一个带有input =“text”的HTML表单。我需要这是文本而不是数字。
在javascript方面,我尝试删除非数字字符,只有在我键入的第一个字符是数字时才有效。如果我先输入一封信,我会收到NaN错误。是的,我需要parseInt,因为另一个脚本在此之后启动。感谢
function numberonly(id)
{
var x = document.getElementById(id);
var numbers = x.value.replace(/[^\d]/g,'');
if (x.value.length>0)
{
x.value = parseInt(numbers, 10);
}
}
如果可能,我会避免使用“event”选项,如此处所示。 http://webcheatsheet.com/javascript/disable_enter_key.php
答案 0 :(得分:1)
谢谢你们。问题解决了。是parseInt发出错误。我认为它正在解析空白的意思。
解决方案:
var x = document.getElementById(id);
var numbers = x.value.replace(/[^\d]/g,'');
if (numbers.length>0)
{
x.value = parseInt(numbers, 10);
}
else
{
x.value = ""; //0 can be used
}