gpt4 book ai didi

javascript - 尝试检查表单中的值是否在设定范围内的数字

转载 作者:行者123 更新时间:2023-11-28 09:44:06 24 4
gpt4 key购买 nike

尝试编写一个脚本来检查表单中的值是否为 1 到 99999 范围内的数字。

1) 该脚本主要工作,除了两件事外,如果您先输入数字,然后输入字母,它不会检测到您输入的字母和数字

2)我希望它在 onblur 事件上运行脚本,但是每次我尝试脚本根本不起作用。

几年前学过java,发现我忘记了大部分东西,如果有人能指出我哪里出错了,那就太好了

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Please enter your age</title>
<script language="JavaScript1.2">
function checknumber(){
var x=document.checknum.pnum.value
/*does it contain non digits */
var anum=/(^\D+$)|(^\D+\.\D+$)/
if (anum.test(x))
{
alert("Please input a valid Runner ID between 1 to 99999 !")
testresult=false
}
/*is it above 99999*/
else if (x > 99999)
{
alert("Please input a valid Runner ID between 1 to 99999 !")
testresult=false
}
/*is it below 1*/
else if (x < 1)
{
alert("Please input a valid Runner ID between 1 to 99999 !")
testresult=false
}
return (testresult)
}
</script>
</head>
<body>
<form name="checknum" onSubmit="return checknumber()">
Please input a valid Runner ID between 1 to 99999:
<input type="text" name="pnum" onchange="checknumber()">
<input type="submit" value="Submit">
</form>
</body>
</html>

非常感谢达米安

最佳答案

导入Jquery库并使用该功能

<script type="text/javascript">

$(document).ready(function(){
$("#pnum").keypress(function (e)
{
//if the letter is not digit then display error and don't type anything
if( e.which!=8 && e.which!=0 && (e.which<48 || e.which>57))
{
return false;
}
});
});

但文本框的 ID

 <input type="text" name="pnum" id="pnum" maxLength="5" > 

这将确保您只能添加数字和 5 个字符

关于javascript - 尝试检查表单中的值是否在设定范围内的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12026647/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com