基本的Javascript验证

时间:2011-07-27 20:36:32

标签: javascript

这是一个非常简单的问题。我有这个工作,然后我必须改变一些东西,现在它不起作用。它只是一个JS代码检查空字符串。这是下面的代码。这让我疯狂了20分钟,试图找出这个荒谬简单的代码有什么问题。

 <script  type="text/javascript">
 function validateForm(){
 var email= document.getElementById('email').value;
 if (email.length==''){
 alert("please fill out email");}}
    </script>

<form name="contact" method="post" action='ContactPHP.php'>
Your Email: <input name='email' type='text' /><br />
<input type="button" value="submit" onClick="validateForm()"/>
 </form>

6 个答案:

答案 0 :(得分:4)

您的javascript调用getElementById('email'),但您的输入的ID不是'email'。

为其分配ID。

<input name='email' id='email' type='text' />

答案 1 :(得分:2)

email.length不会返回字符串。您正在将它与空字符串进行比较。使用email == ""email.length > 0

此外,您的输入元素包含name“电子邮件”,但您正在查找包含id“电子邮件”的元素。

以下是完整(已更正)的摘要:

<script  type="text/javascript">
    function validateForm(){
        var email= document.getElementById('email').value;
        if(email.value == '') {
            alert("please fill out email");
        }
    }
</script>

<form name="contact" method="post" action='ContactPHP.php'>
    Your Email: <input id='email' name='email' type='text' /><br />
    <input type="button" value="submit" onClick="validateForm()"/>
</form>

答案 2 :(得分:0)

你有name='email',但正在寻找带有电子邮件ID的元素...只需在文字输入中添加id='email'

答案 3 :(得分:0)

您对该电子邮件的输入没有Id =“email”

答案 4 :(得分:0)

您不想在此处使用document.getElementById。

试试这个:

   function validateForm(form){  var email = form.email.value;  if(email.length ==''){  提醒(“请填写电子邮件”);}}      您的电子邮件:

答案 5 :(得分:0)

我太懒了,但我觉得即使验证失败,表单也会提交,因为javascript函数不会返回false;

警告后我会返回false('yadda yadda');并将onclick事件处理程序更改为:

onclick="return validateForm();"