Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript年龄验证_Javascript - Fatal编程技术网

Javascript年龄验证

Javascript年龄验证,javascript,Javascript,我目前正在做javascript验证,除了我的年龄验证之外,一切都很好。如果用户输入字符串类型的值,则必须向用户发出警告,以数字形式输入其年龄 我不太清楚该怎么做,所以非常感谢您的帮助 您将在if语句中看到我试图在validAge函数中执行的操作:第55行 这是我到目前为止的代码 <!DOCTYPE HTML> <html> <head> <title>Question 1 / Vraag 1 - Basic JavaScript Vali

我目前正在做javascript验证,除了我的年龄验证之外,一切都很好。如果用户输入字符串类型的值,则必须向用户发出警告,以数字形式输入其年龄

我不太清楚该怎么做,所以非常感谢您的帮助

您将在if语句中看到我试图在validAge函数中执行的操作:第55行

这是我到目前为止的代码

<!DOCTYPE HTML>
<html>
<head>
    <title>Question 1 / Vraag 1 - Basic JavaScript Validaton / Basiese JavaScript validasie
    </title>
    <link rel="Stylesheet" type="text/css" href="style.css" />
        <script language="javascript">

                function validate()
                {
                    var firstname = document.getElementById("firstname");
                    var surname = document.getElementById("surname");
                    var age = document.getElementById("age");
                    var email = document.getElementById("email");

                    if(notEmpty(firstname, "ENTER USERNAME"))
                    {
                        if(notEmpty(surname, "ENTER SURNAME"))
                        {
                            if(notEmpty(age, "ENTER AGE"))
                            {
                                if(validAge(age, "AGE MUST BE A NUMERIC VALUE"))
                                {
                                    if(notEmpty(email, "ENTER EMAIL"))
                                    {
                                        if(emailValid(email, "ENTER A PROPER EMAIL ADDRESS"))
                                        {
                                            return emailValid();
                                        }
                                    }
                                }
                            }
                        }
                    }
                    return false;
                }

                function notEmpty(elem, helperMsg)
                {
                    if(elem.value.length == 0)
                    {
                        alert(helperMsg);
                        elem.focus();
                        return false;
                    }

                    return true;
                }


                function validAge(elem, helperMsg)
                {
                    var age = elem.value;

                    if(age <= 0 || age > 100 || age.type == string???))
                    {
                        alert(helperMsg);
                        return false;
                    }

                    return true;
                }


                function emailValid(elem, helperMsg)
                {
                    var atpos = elem.value.indexOf("@");
                    var dotpos = elem.value.lastIndexOf(".");

                    if(atpos < 0 || dotpos < 0)
                    {
                        alert(helperMsg);
                        return false;
                    }

                    return true;
                }

        </script>
</head>
<body>
    <form method="get" action="">
    <table>
    <tr>
    <td> Firstname:</td>
    <td> <input type="text" name="firstname" id="firstname" /><span id="fnError">
        </span></td>
    </tr>
    <tr>
    <td> Surname:</td>
    <td> <input type="text" name="surname" id="surname"/><span id="snError">
        </span></td>
    </tr>
    <tr>
    <td> Age:</td>
    <td> <input type="text" name="age" id="age"/><span id="aError">
        </span></td>
    </tr>
    <tr>
    <td>  Email:</td>
    <td><input type="text" name="email" id="email"/><span id="eError">
        </span></td>
    </tr>
    <tr><td colspan="2"><input type="button" value="Validate" onClick="validate()" /></td></tr>
    </table>
    </form>
</body>
</html>

问题1/Vraag 1-基本JavaScript验证/Basiese JavaScript验证
函数验证()
{
var firstname=document.getElementById(“firstname”);
var姓氏=document.getElementById(“姓氏”);
var age=document.getElementById(“age”);
var email=document.getElementById(“电子邮件”);
if(notEmpty(firstname,“输入用户名”))
{
if(notEmpty(姓氏,“输入姓氏”))
{
if(notEmpty(年龄,“输入年龄”))
{
if(有效期(年龄,“年龄必须是数值”))
{
如果(notEmpty(电子邮件,“输入电子邮件”))
{
如果(emailValid(电子邮件,“输入正确的电子邮件地址”))
{
返回emailValid();
}
}
}
}
}
}
返回false;
}
函数notEmpty(elem,helperMsg)
{
if(elem.value.length==0)
{
警报(helperMsg);
元素焦点();
返回false;
}
返回true;
}
功能有效性(elem、helperMsg)
{
变量年龄=元素值;
if(age 100 | | age.type==字符串??)
{
警报(helperMsg);
返回false;
}
返回true;
}
函数emailValid(elem,helperMsg)
{
var atpos=元素值indexOf(“@”);
var dotpos=元素值lastIndexOf(“.”);
如果(atpos<0 | | dotpos<0)
{
警报(helperMsg);
返回false;
}
返回true;
}
名字:
姓:
年龄:
电邮:

您可以使用该功能

您可以使用该功能

使用RegExp检查它是否为有效年龄。像
isNaN
这样的方法仍然允许使用浮点数,尽管我从未听人说过
我的年龄是十二点三

另一个提示:除了嵌套数百个
if
-条件,还可以使用逻辑
&&
(AND)运算符

if(a){
  if(b){
    if(c){
       ...
可缩短为:

if(a && B && c){

使用RegExp检查它是否为有效年龄。像
isNaN
这样的方法仍然允许使用浮点数,尽管我从未听人说过
我的年龄是十二点三

另一个提示:除了嵌套数百个
if
-条件,还可以使用逻辑
&&
(AND)运算符

if(a){
  if(b){
    if(c){
       ...
可缩短为:

if(a && B && c){

我想这就是你想要的:

if(isNaN(age) || age <= 0 || age > 100)) 
此外,我将避免嵌套所有
if
语句。您可以在每次返回后返回,如下所示:

if(notEmpty(firstname, "ENTER USERNAME")) return false;
if(notEmpty(surname, "ENTER SURNAME")) return false;
if(notEmpty(age, "ENTER AGE")) return false;
/// skip a few ...
return emailValid(); 

顺便说一句,有些人已经超过100岁了。此应用程序将不利于他们的用户体验。

我认为这正是您想要的:

if(isNaN(age) || age <= 0 || age > 100)) 
此外,我将避免嵌套所有
if
语句。您可以在每次返回后返回,如下所示:

if(notEmpty(firstname, "ENTER USERNAME")) return false;
if(notEmpty(surname, "ENTER SURNAME")) return false;
if(notEmpty(age, "ENTER AGE")) return false;
/// skip a few ...
return emailValid(); 
顺便说一句,有些人已经超过100岁了。此应用程序将不利于他们的用户体验。

请使用以下方法尝试此操作:

功能有效性(elem,helperMsg)
{
变量年龄=元素值;
//如果年龄不是一个数字,至少不是1,大于100,或者有一个小数位。
如果(isNaN(年龄)| |年龄100 | |年龄指数(“.”>=0)
{
警报(helperMsg);
返回false;
}
返回true;
}
尝试使用以下方法:

功能有效性(elem,helperMsg)
{
变量年龄=元素值;
//如果年龄不是一个数字,至少不是1,大于100,或者有一个小数位。
如果(isNaN(年龄)| |年龄100 | |年龄指数(“.”>=0)
{
警报(helperMsg);
返回false;
}
返回true;
}

以上所有答案都是正确的。。如果你想到可重用性,请看看这个。它可以轻松地验证表单

以上所有答案都是正确的。。如果你想到可重用性,请看看这个。它可以轻松地验证表单


<html>
<head>
<title>Name</title>
<script>
function validatetext()
{
    if(document.sign.fname.value=="")
    {
        alert("Missing First name!");
    }
    if(isNaN(document.sign.age())
    {
        alert("Enter numaric");
    }
}
</script>
</head>
<body><form method=post name="sign">
<b>name:</b>
<input name="fname" type="text" size="30" maxlength="30" />
<br>
<b>age:</b>
<input name="age" type="text" size="30" maxlength="30" />
<input type="submit" name="signup"  value="sign up" onclick="validatetext();" />
</form>
</body>
</html>
名称 函数validatetext() { if(document.sign.fname.value==“”) { 警报(“缺少名字!”); } if(isNaN(document.sign.age()) { 警报(“输入numaric”); } } 姓名:
年龄:

名称
函数validatetext()
{
if(document.sign.fname.value==“”)
{
警报(“缺少名字!”);
}
if(isNaN(document.sign.age())
{
警报(“输入numaric”);
}
}
姓名:

年龄:
但如果用户决定将其作为