Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 简单的电子邮件验证表单。完全困惑_Jquery_Html_Validation - Fatal编程技术网

Jquery 简单的电子邮件验证表单。完全困惑

Jquery 简单的电子邮件验证表单。完全困惑,jquery,html,validation,Jquery,Html,Validation,这与如何构建电子邮件验证表单无关。 我发现了这段代码: 你可以看到它工作得很好。 我试图在我的网站上实现同样的东西,但由于某种原因,在中没有显示文本。应该出现在输入框旁边的一个,在电子邮件中说明是否有效。 我一开始只是以自己的形式修改了一些东西,最后将JSFIDLE中的确切代码粘贴到我的文件中,但它仍然不起作用。 我正在使用Mozzila FireFox。我也尝试了Chrome,我得到了同样的结果。 我遗漏了什么?检查是否包含jQuery库 <script src="//ajax.goo

这与如何构建电子邮件验证表单无关。 我发现了这段代码:

你可以看到它工作得很好。 我试图在我的网站上实现同样的东西,但由于某种原因,在中没有显示文本。应该出现在输入框旁边的一个,在电子邮件中说明是否有效。 我一开始只是以自己的形式修改了一些东西,最后将JSFIDLE中的确切代码粘贴到我的文件中,但它仍然不起作用。 我正在使用Mozzila FireFox。我也尝试了Chrome,我得到了同样的结果。
我遗漏了什么?

检查是否包含jQuery库

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

在Chrome中打开开发者工具,使用Ctrl+Shift+I(或Mac上的Cmd+Opt+I)打开。
如果有任何错误,请检查控制台选项卡。

由于您没有发布您所修改的代码,我假设以下情况:

  • 您可能没有包括
  • 您还没有将代码包装到DOM就绪函数中
  • 解决方案:

    您必须像这样插入jquery库:

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    
    <script type="text/javascript">
    
        $(document).ready(function(){
    
             $('form input[name="email"]').blur(function () {
                 var email = $(this).val();
                 var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/igm;
                 if (re.test(email)) {
                    $('.msg').hide();
                    $('.success').show();
                 } else {
                    $('.msg').hide();
                    $('.error').show();
                 }
    
             });
    
    
    
        });
    </script>
    
    
    
    然后,必须将所有jQuery代码包装在ready函数中,如下所示:

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    
    <script type="text/javascript">
    
        $(document).ready(function(){
    
             $('form input[name="email"]').blur(function () {
                 var email = $(this).val();
                 var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/igm;
                 if (re.test(email)) {
                    $('.msg').hide();
                    $('.success').show();
                 } else {
                    $('.msg').hide();
                    $('.error').show();
                 }
    
             });
    
    
    
        });
    </script>
    
    
    $(文档).ready(函数(){
    $('forminput[name=“email”]”)。模糊(函数(){
    var email=$(this.val();
    变量re=/^([^()[\]\\,;:\s@\“]+(\.[^()[\]\,;:\s@\“]+)*)(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[1,3}.[0-9]{1,3}.]124;([a-zA Z-0-9]+-9]+-Z].[a-2]);
    如果(重新测试(电子邮件)){
    $('.msg').hide();
    $('.success').show();
    }否则{
    $('.msg').hide();
    $('.error').show();
    }
    });
    });
    
    您可以使用HTML5属性:

    <input type="email" pattern="[a-zA-Z]{3,}@[a-zA-Z]{3,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}[.]{1}[a-zA-Z]{2,}" required placeholder="Enter you Email">
    
    
    

    您是否包括在内?检查您的控制台是否有错误如果它显示
    $undefined
    ,那么您可能没有在dom就绪处理程序中包含libraryfiddle自动包装代码,您使用过吗?尝试创建一个新的控制台,也许我们可以更好地了解您尝试执行的操作以及失败的地方