表单验证Javascript没有响应

Form validation Javascript is not responding

本文关键字:响应 Javascript 验证 表单      更新时间:2023-09-26

几秒钟前,它还在工作,我没有更改任何内容。我的网络应用程序是一个简单的网络应用。Javascript在将表单重定向到servlet之前负责表单验证。我做错了什么?

表单验证未进行验证。我是一个程序员新手,所以请帮忙。

// 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()应该返回true。

在中对所有条件进行验证后,尝试将返回设置为true

 function validateForm()

请参阅:http://jsfiddle.net/phpadqcr/

我将您的javascript代码移动到关闭html标记之前,在<脚本>lt/脚本>块,我在这里发现了一个拼写错误:

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

您可以通过将"förnamn"替换为"fornamn"来修复它。

代码中的两个错误

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

2) 上一个return语句缺少半列(;)。