关于表单验证中成功则跳转到指定页面否则不跳转的问题

之前学习HTML的时候会涉及到一些JavaScript的基础知识,其中就有表单验证问题,当时很郁闷的是,不管表单验证是否通过,它都会跳转到指定页面。现在在学js的时候,发现这个问题,恍然大悟。以验证邮件地址是否合法为例,用代码说话。

JavaScript代码

function validate(){
				var x = document.forms["myForm1"]["email"].value;	//找到表单中email输入框的内容
				var atpos = x.indexOf("@");	//从前往后数@符号所在的位置
				var dotpos = x.lastIndexOf(".");	//从后往前数.符号所在的位置
				if(atpos<1||dotpos<atpos+2||dotpos+2>=x.length){
					alert("不是一个有效的e-mail地址");
					return false;
				}
			}

特别要注意的是,在if语句中含有 return false; 这句,如果少了这一句,则不管验证成功与否它都会自行跳转。

HTML代码

<form action="#" οnsubmit="return validate();" method="post" name="myForm1">
			Email:<input type="text" name="email" />
			<input type="submit" value="提交"/>
		</form>

注意: onsubmit中 return 这个词很关键,必不可少,否则结果也会跟上述的一样,并不是我们想要的。

就这样,我疑惑已久的问题得到解决啦!

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐