不应该在email控件里用onclick事件做检查吧
可以在form的action里检查

解决方案 »

  1.   

    <form name="form" onSubmit="validate_form()" method="post" action="aa.php" > 
    这里已经检查所有的表单数据了
    <input type="text" name="email" id="email" onclick="check_email('email')">
    这里不用onclick
      

  2.   

    onsubmit="return validate_form()"
      

  3.   

    在check_email加一个alert,看一下是否有调用那个函数,如果有调用,那可能就是你的正则表达式有问题
      

  4.   

    给你精简了一下,test
    <script  language="javascript"  > 
    function validate_form(){
    if (!check_email(document.form.email.value)  || document.form.email.value=='') 

    alert(  'Sorry!Please Fill in the correct Email address  '); 
    return false; 
    }
    }function check_email(email) { 
        //var pattern = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/; 
        var pattern = /^\w+((-\w+) |(\.\w+))*\@[A-Za-z0-9]+((\. |-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/; 
        flag = pattern.test(email); 
        if(!flag&&email.length>0){ 
           return false; 
        } 
        return true; 

    </script><form name="form" onSubmit="return validate_form()" method="post" action="aa.php" > 
    <table>
    <tr><td> 
    <input type="text" name="email" id="email" onclick="check_email('email')">---是在这响应还是在哪啊
    </td></tr>
    </table><input type="submit" value="提交">
    </form>