Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.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
Javascript 电子邮件地址验证但创建帐户,尽管电子邮件地址无效_Javascript - Fatal编程技术网

Javascript 电子邮件地址验证但创建帐户,尽管电子邮件地址无效

Javascript 电子邮件地址验证但创建帐户,尽管电子邮件地址无效,javascript,Javascript,我编写了验证电子邮件地址的脚本,如果发送了无效的电子邮件,它会发出警报通知。虽然该帐户是使用相同的无效电子邮件地址创建的,并存储在数据库中…请提供帮助 代码似乎是: <div class="form"> <ul class="tab-group"> <li class="tab "><a href="#signup">Sign Up</a></li> </ul> <

我编写了验证电子邮件地址的脚本,如果发送了无效的电子邮件,它会发出警报通知。虽然该帐户是使用相同的无效电子邮件地址创建的,并存储在数据库中…请提供帮助 代码似乎是:

    <div class="form">

    <ul class="tab-group">
    <li class="tab "><a href="#signup">Sign Up</a></li>
    </ul>

    <div class="tab-content">


    <form name="form1" action="trynow" method="post" onsubmit="ValidateEmail(document.form1.txtEmail)">
        <div>
            <input type="hidden" name="register_csrf" autocomplete="false" autofocus="false" value="<%=((String)request.getAttribute("register_csrf")!=null)?request.getAttribute("register_csrf"):"" %>"/>

            <% String error_msg = (String)request.getAttribute("error_msg");
                if(error_msg != null)
                {
            %>
            <div  class="alert alert-error"> <%= error_msg %></div>

            <% } %>
            <%= ((String)request.getAttribute("succ_msg") != null)?request.getAttribute("succ_msg"):"" %>

        </div>



            <div class="field-wrap">
                <label>
                    Full Name<span class="req">*</span>
                </label>
                <input required="required" name="txtName"  type="text" >
            </div>



            <div class="field-wrap">
                <label>
                    Email Address<span class="req">*</span>
                </label>
                <input required="required" name="txtEmail" type="text" >
            </div>

            <div class="field-wrap">
                <label>
                    Set A Password<span class="req">*</span>
                </label>
                <input name="txtPassword"  type="password" >
            </div>

            <div class="field-wrap">
                <label>
                    Retype Password<span class="req">*</span>
                </label>
                <input name="txtRePassword"  type="password" >
            </div>
            <div>
            <button type="submit" class="button button-block" />Get Started</button>
            </div>
        <a class="small-message" href="login"><small>Already Registered ?</small></a><a href="/"> <small> <br>Back To Home</small></a>
       </form>
        <script>
            function ValidateEmail(inputText)
            {
                var mailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
                if(inputText.value.match(mailformat))
                {
                    document.form1.txtEmail.focus();
                    return true;
                }
                else
                {
                    alert("You have entered an invalid email address!");
                    document.form1.text1.focus();
                    return false;
                }
            }
        </script>

    </div><!-- tab-content -->

</div> <!-- /form -->


全名* 电子邮件地址* 设置密码* 重新输入密码* 开始 函数ValidateEmail(inputText) { var mailformat=/^\w+([\.-]?\w+*@\w+([\.-]?\w+*(\.\w{2,3})+$/; if(inputText.value.match(mailformat)) { document.form1.txtEmail.focus(); 返回true; } 其他的 { 警报(“您输入的电子邮件地址无效!”); document.form1.text1.focus(); 返回false; } }

在提交表单中,使用
返回ValidateEmail(this.txtEmail)


现在,只有当
电子邮件
有效时,才会发生表单提交。否则将被阻止


另外,您引用的是
document.form1.text1.focus();
,而
text1
在表单中根本不存在。因此,您一定也在这里遇到了错误。

您有几个问题,包括电子邮件错误时没有聚焦正确的字段,以及在邮件没有错误时聚焦某些内容。 我也会使用测试而不是匹配

我建议改为(在页首):

功能验证邮件(inputText){
var val=inputText.value;
var mailformat=/^\w+([\.-]?\w+*@\w+([\.-]?\w+*(\.\w{2,3})+$/;
如果(!mailformat.test(val)){
警报(“您输入的电子邮件地址无效!”);
inputText.focus();
返回false;
}
}
window.onload=function(){
document.getElementsByName(“form1”)[0]。onsubmit=function(){
返回ValidateEmail(this.txtEmail);
}
}

全名* 电子邮件地址* 设置密码* 重新输入密码* 开始
而不是text1txtmail

   <script>
                function ValidateEmail(inputText)
                {
                    var mailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
                    if(inputText.value.match(mailformat))
                    {
                        document.form1.txtEmail.focus();
                        return true;
                    }
                    else
                    {
                        alert("You have entered an invalid email address!");
                        document.form1.txtEmail.focus();
                        return false;
                    }
                }
            </script>

函数ValidateEmail(inputText)
{
var mailformat=/^\w+([\.-]?\w+*@\w+([\.-]?\w+*(\.\w{2,3})+$/;
if(inputText.value.match(mailformat))
{
document.form1.txtEmail.focus();
返回true;
}
其他的
{
警报(“您输入的电子邮件地址无效!”);
document.form1.txtEmail.focus();
返回false;
}
}

在正文中,我写道:var mailformat检查没有引用。在函数validateEmail中,OP使用的是
inputText.value
,因此在本例中需要只传递元素而不是值。您可以参考
if(inputText.value.match(邮件格式))
啊,你是对的。但是你仍然可以使用这个。txtEmailYa这是真的。我们可以用多种方式引用元素。但是我想OP对OPs的选择很有信心。因为两者都会引用相同的txtEmail,所以我留下了它:)实际上页面中有更多的错误。请参阅我的回答谢谢#mohamedrias获得你的准确答案…我想我会It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It’’It It’’It It’’It’’It It’’It;将返回所有span元素。希望现在我的答案值得投赞成票;)当然可以,但选择器仍然错误。输入不在span标记内。正如我前面提到的,
*
不包含输入,但您使用了
document.queryselectoral(.req>input”)
是的,我看到了。我已经删除了其他字段的测试,因为它可以在jQuery中轻松完成,但查找以前的兄弟姐妹是浪费时间的-需要更改html才能使我的循环有意义。我错过了手机上的跨度
   <script>
                function ValidateEmail(inputText)
                {
                    var mailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
                    if(inputText.value.match(mailformat))
                    {
                        document.form1.txtEmail.focus();
                        return true;
                    }
                    else
                    {
                        alert("You have entered an invalid email address!");
                        document.form1.txtEmail.focus();
                        return false;
                    }
                }
            </script>