【问题标题】:My form's validate() is not working我的表单的 validate() 不起作用
【发布时间】:2017-12-29 03:52:19
【问题描述】:

没有任何效果!我在表单中的注册按钮中添加了 onSubmit = "validate()",如果字段为空,我会创建函数和警报。但没有任何效果! 控制台中没有警报没有错误。没有希望!

<head>
    <title>WHAT THE TECH!</title>
    <script type="text/javascript">
    function validate() {
        let fullname = document.getElemenyByname("full_name").value;
        let email = document.getElemenyById("email").value;
        let pass = document.getElemenyById("password").value;
        let add = document.getElemenyById("address").value;
        if (fullname == "" || fullname.length == 0) {
            alert("Enter Full Name");
            document.getElemenyById("full_name").focus;
            return false;
        } else if (email == "" || email.length == 0) {
            alert("Enter Email Address!");
            document.getElemenyById("email").focus;
            return false;
        }
    }
    </script>
</head>

<body>
    <div class="mainwrap">
        <div class="content">
            <div class="SignUp">
                <div class="Formup">
                    <div class="title">New here? Register!</div>
                    <form name="register">
                        <table>
                            <tr>
                                <td>Full Name: </td>
                                <td><input type="text" id="full_name">
                                </td>
                            </tr>
                            <tr>
                                <td>Email: </td>
                                <td><input type="text" id="email">
                                </td>
                            </tr>
                            <tr>
                                <td>Password: </td>
                                <td><input type="password" id="password">
                                </td>
                            </tr>
                            <tr>
                                <td>Country: </td>
                                <td>
                                    <select>
                                        <option value="U.A.E">U.A.E</option>
                                        <option value="K.S.A">K.S.A</option>
                                        <option value="Qatar">Qatar</option>
                                    </select>
                                </td>
                            </tr>
                            <tr>
                                <td>Gender: </td>
                                <td>
                                    <input type="radio" name="gender" value="male" checked> Male<br>
                                    <input type="radio" name="gender" value="female"> Female<br>
                                    <input type="radio" name="gender" value="other"> Other
                                </td>
                            </tr>
                            <tr>
                                <td>Address: </td>
                                <td><input type="text" id="address">
                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <input type="submit" value="Register" class="registerbutton" name="register" onSubmit="validate()">
                                </td>
                            </tr>
                        </table>
                    </form>
                </div>
                </div>
            </div>
        </div>
</body>

【问题讨论】:

  • 你想做什么?
  • 我的作业告诉我为表单创建一个验证,我必须确保所有字段都已填写,如果没有它应该显示错误消息!
  • 错误:无法读取问题内容
  • 应该是var firstName = document.getElmenetById('firstName').value;
  • 您确实应该将您的实际代码粘贴到帖子中,因为人们会发现很难为您提供帮助,因为他们必须从头开始编写您的代码。

标签: javascript html forms validation


【解决方案1】:

如果你想使用 name 属性获取值,你应该使用 document.getElementsByName。我建议通过“id”属性来做。

function submitFunction() {
        var firstName = document.getElementsByName("first_Name")[0].value;
         if (firstName == "" || firstName == null || firstName.length == 0) {
            alert("First Name is required");
            return false;
        } 
    }

还要在 onsubmit 事件中添加 return 以避免页面刷新。

<form name="Register" onsubmit="return submitFunction() " method="post">

选项 2:使用 HTML5

required 属性将进行验证检查,您可以跳过 javascript。

<input type="text" name="first_Name" required>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-18
    • 2015-03-10
    • 2016-03-21
    • 1970-01-01
    • 1970-01-01
    • 2016-05-18
    • 2011-02-10
    • 1970-01-01
    相关资源
    最近更新 更多