Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.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 上次输入正确时未激发onsubmit_Javascript_Html_Javascript Events - Fatal编程技术网

Javascript 上次输入正确时未激发onsubmit

Javascript 上次输入正确时未激发onsubmit,javascript,html,javascript-events,Javascript,Html,Javascript Events,当电子邮件输入中没有任何内容时,一切正常。但只要我输入一个“有效”的电子邮件地址,它甚至不会启动该功能,因为警报从未触发。任何帮助都将不胜感激 Javascript(js/registration.js): 函数validateForm(){ var value1=document.forms[“regForm”][“username”].value; var value2=document.forms[“regForm”][“pass1”]值; var value3=document.form

当电子邮件输入中没有任何内容时,一切正常。但只要我输入一个“有效”的电子邮件地址,它甚至不会启动该功能,因为警报从未触发。任何帮助都将不胜感激

Javascript(js/registration.js):

函数validateForm(){
var value1=document.forms[“regForm”][“username”].value;
var value2=document.forms[“regForm”][“pass1”]值;
var value3=document.forms[“regForm”][“pass2”]值;
var value4=document.forms[“regForm”][“email”].value;
var atpos=价值4.指数(“@”);
var dotpos=值4.lastIndexOf(“.”);
var检查=真;
如果(value1==null | | value1==“”){
$(“#userCheck”).html(“请输入用户名!(限25个字符)”;
检查=错误;
}else$(“#userCheck”).html(“”);
如果(value2==null | | value2==“”){
$(“#pass1Check”).html(“请输入密码!(限25个字符)”;
检查=错误;
}否则{
如果(值2.长度<8){
$(“#pass1Check”).html(“密码必须是8到25个字符”);
检查=错误;
}else$(“#pass1Check”).html(“”);
}
如果(value3==null | | value3==“”){
$(“#pass2Check”).html(“请重新输入密码!(限25个字符)”;
检查=错误;
}否则{
如果(值3!=值2){
$(“#pass2Check”).html(“密码不匹配!”);
检查=错误;
}else$(“#pass2Check”).html(“”);
}
如果(value4==null | | value4==“”){
$(“#emailCheck”).html(“请输入有效的电子邮件!”);
检查=错误;
}否则{
如果(atpos<1 | | dotpos=x.length){
$(“#emailCheck”).html(“请输入有效的电子邮件!”);
检查=错误;
}else$(“#emailCheck”).html(“”);
}
警惕(检查);
退货检查;
}
HTML:


(限25个字符)
(限25个字符)



问题是:
引用错误:未定义x

在这一行:

if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= x.length) {
if(atpos<1 | | dotpos=x.length){
if(atpos<1 | | dotpos=x.length){

你没有在这里定义x。我想它应该是
value4。length

你检查控制台是否有错误吗?离题:
,不是
@Pointy哦,天哪,这是一个多么好的建议…我做了,结果我没有用'value4'替换变量'x'。你太棒了!询问代码的问题必须证明一个最小的unde了解正在解决的问题。包括尝试的解决方案、为什么不起作用以及预期结果。另请参见:-第1点:在提出问题之前,您是否做了一些研究?
<form name="regForm" method="post" action="" onsubmit="return validateForm();">
    <input type="text" id="uName" name="username" size="25" maxlength="25" value=""/>
    <span id="userCheck"> (25 character limit)</span></br>
    <input type="password" id="password1" name="pass1" size="25" maxlength="25" value=""/>
    <span id="pass1Check"> (25 character limit)</span></br>
    <input type="password" id="password2" name="pass2" size="25" maxlength="25" value=""/>
    <span id="pass2Check"></span></br>
    <input type="text" name="email" size="25" value="" />
    <span id="emailCheck"></span></br>
    <input type="submit" name="submit" value="Register" />
    <input type="hidden" name="perm" value="3" /> <!-- regular user -->
    <input type="hidden" name="redirect" value="index.php" />
</form>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript" src="js/registration.js"></script>
if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= x.length) {
if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= x.length) {