简体   繁体   English

表单验证Javascript没有响应

[英]Form validation Javascript is not responding

Seconds ago, it was working, and I did not change anything. 几秒钟前,它在工作,我什么也没做。 My web app is a simple web-app. 我的Web应用程序是一个简单的Web应用程序。 Javascript is responsible for form validation before it redirects it to the servlet. Javascript负责将表单重定向到Servlet之前的表单验证。 What did I do wrong? 我做错了什么?

Form validation is not validating. 表单验证未验证。 I am a novice programmer, so please help. 我是新手程序员,所以请帮忙。

// form-validation (javascript)
function validateForm() {
    var firstname = document.forms["myForm"]["förnamn"].value;
    var lastname = document.forms["myForm"]["efternamn"].value;
    var address = document.forms["myForm"]["address"].value;
    var email = document.forms["myForm"]["email"].value;
    var news = document.forms["myForm"]["news"].value;

    if (firstname == null || firstname == "") {
        alert("Var god och fyll i alla fält!");
        return false;
    } else if (lastname == null || lastname == "") {
        alert("Var god och fyll i alla fält!");
        return false;
    } else if (address == null || address == "") {
        alert("Var god och fyll i alla fält!");
        return false;
    } else if (email == null || email == "") {
        alert("Var god och fyll i alla fält!");
        return false;
    } else if (email.indexOf("@hotmail.com") === -1) {
        alert("Skriv in en korrekt mail-address. exempel@hotmail.com");
        return false
    }
}
//]]>
  </script>
  </head>
<body>
<fieldset style="width: 450px; padding: 20px">
    <div id="page">
        <div id="header">
            <h1>Abdi Tem</h1>
            <h2>Welcome to my website</h2>
        </div>
        <div id="bar">
            <div class="link">
                <a href="Hem.html">Hem</a>
            </div>
            <div class="link">
                <a href="CV.html">INFO</a>
            </div>
            <div class="link">
                <a href="Kontakt.html">Ḱontakt</a>
            </div>
        </div>
    </div>
    <h1>Hyr en programmerare:</h1>
    <form name="myForm" action="ServletProjekt"
        onsubmit="return validateForm()" method="post" id="myForm">
        <table>
            <tr>
                <td>Ditt namn:</td>
                <td><input type="text" name="fornamn" /></td>
            </tr>
            <tr>
                <td>Ditt efternamn:</td>
                <td><input type="text" name="efternamn" /></td>
            </tr>

            <tr>
                <td>Din adress:</td>
                <td><input type="text" name="address" /></td>
            </tr>
            <tr>
                <td>Din email:</td>
                <td><input type="text" name="email" /></td>
            </tr>
            <tr>
                <td>Är ditt ärende akut?</td>
                <td><input type="radio" name="howoften" value="often"
                    checked="checked" />JA <input type="radio" name="howoften"
                    value="not often" />NEJ</td>
            </tr>
            <tr>
                <td>Vad vill du ha hjälp med?</td>
                <td><input type="checkbox" name="news" value="Java"
                    checked="checked" />Programmering <input type="checkbox"
                    name="news" value="C" />Felsökning/Debugging</td>
            </tr>
            <tr>
                <td>Hur många timmar kommer ditt ärende att ta?</td>
                <td><select name="age">

                        <option>10-20h</option>
                        <option>30-40h</option>
                        <option>50-60h</option>
                        <option>70h+</option>

                </select></td>
            </tr>
        </table>
        <hr />
        <input type="submit" name="submit" value="Beställ" />
    </form>
</fieldset>
 </body>
 </html>

onsubmit function() in your form should return true. 表单中的onsubmit function()应该返回true。

Try putting return true after all conditions have been taken care for validations in 在考虑了所有条件以进行验证之后,尝试将return设置为true

 function validateForm()

See this: http://jsfiddle.net/phpadqcr/ 看到这个: http : //jsfiddle.net/phpadqcr/

I move your javascript code before the closing html tag, inside a <script></script> block and I found a typo here: 我将您的javascript代码移动到<script> </ script>块内的html标记之前,然后在这里发现了一个错字:

    var firstname = document.forms["myForm"]["förnamn"].value;

You can fix it by replace the "förnamn" with "fornamn". 您可以通过将“förnamn”替换为“ fornamn”来修复它。

Two error in code 代码中的两个错误

1) ["förnamn"] : unicode character 1) ["förnamn"] :Unicode字符

2) Semi-column ( ; )missing for last return statement. 2)最后一个返回语句缺少半列( ; )。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM