我正在创建一个程序,我需要验证用户输入。JavaScript用户的输入验证
用户应该能够写出浮点数字和一些字母,例如'k'为千位或'm'为百万位。允许的是:数字,并且列表中只有一个字母(g,k,m,n,u),只有一个'。'为十进制数字。如果用户放置不同的符号,则列表中的两个字母,两个点,以另一个符号跟随字母 - 文本框中不显示任何内容。
我到目前为止所做的一切都没有工作。我甚至不能用允许的标志创建一个列表。我该如何解决这个问题?我见过的几乎每一页关于正则表达式在网络上..
function signFilter(e)
{
var keynum;
var keychar;
var numcheck;
if(window.event) // IE
{
keynum = e.keyCode;
}
else if(e.which) // Netscape/Firefox/Opera
{
keynum = e.which;
}
keychar = String.fromCharCode(keynum);
numcheck = /[0-9GMkmpu.]/;
return numcheck.test(keychar);
}
http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_onkeydown 这里是输入的示例代码。没有我尝试给出合理的结果。 (当然,我从回报中删除'!')。
不是很多好来自http://w3fools.com/ – mplungjan
什么指数符号?即'1。0E-23' – ridgerunner