javascript-如果验证成功,则重定向,否则保持在同一页面上
我有一个HTML表单,我正在使用javascript验证它。我想要javascript-如果验证成功,则重定向,否则保持在同一页面上,javascript,validation,Javascript,Validation,我有一个HTML表单,我正在使用javascript验证它。我想要 如果验证成功->自动重定向到其他页面 如果验证失败->仍停留在表单页面上(供用户再次输入)。 仅仅使用javascript,我怎么做呢 这是我的密码 <html> <head> <script type="text/javascript"> function verifyNull() { if (!document.getElemen
- 如果验证成功->自动重定向到其他页面
- 如果验证失败->仍停留在表单页面上(供用户再次输入)。 仅仅使用javascript,我怎么做呢
<html>
<head>
<script type="text/javascript">
function verifyNull() {
if (!document.getElementById('username').value.trim().length) {
alert('Please enter username');
}
else if (!document.getElementById('password').value.trim().length) {
alert('Please enter password');
}
}
function verifyEmail() {
var x = document.getElementById('email').value;
var atpos = x.indexOf("@");
var dotpos = x.lastIndexOf(".");
if (atpos< 1 || dotpos<atpos+2 || dotpos+2>=x.length) {
alert("Not a valid e-mail address");
return false;
}
}
</script>
<title>Bài 2</title>
</head>
<body>
<form name = "myForm" method = "post" action = "registerd.html">
Username <input type = "text" id = "username" name = "username"/><br />
Password <input type = "password" id = "password" name = "password" /> <br />
Email <input type = "text" id = "email" name = "email"/>
<input type = "submit" value = "Submit" onClick = "verifyNull();verifyEmail();"/>
</form>
</body>
</html>
函数verifyNull(){
if(!document.getElementById('username').value.trim().length){
警报('请输入用户名');
}
else if(!document.getElementById('password').value.trim().length){
警报(“请输入密码”);
}
}
函数verifyEmail(){
var x=document.getElementById('email')。值;
var atpos=x.indexOf(“@”);
var dotpos=x.lastIndexOf(“.”);
如果(atpos<1 | | dotpos=x.length){
警报(“不是有效的电子邮件地址”);
返回false;
}
}
Bái 2
用户名
密码
电子邮件
通常,如果验证成功,验证函数应返回true,
如果验证失败,则返回false
function perform()
{
if(isValid)
{
return true;
}
else
{
return false;
}
}
在上面的代码中,方法verifyNull()和verifyEmail()应该返回true或false。按如下所示更改代码,并在表单的submit上调用validate()方法
Remove the onclick event from the submit button and add an onsubmit event to the form.
<form name="myForm" action="registerd.html" onsubmit="return validate()">...</form>
function validate()
{
return (verifyNull() && verifyEmail());
}
function verifyNull(){
var isValid = true;
if(!document.getElementById('username').value.trim().length){
isValid = false;
alert('Please enter username');
}
else if(!document.getElementById('password').value.trim().length){
isValid = false;
alert('Please enter password');
}
return isValid;
}
function verifyEmail(){
var x = document.getElementById('email').value;
var atpos = x.indexOf("@");
var dotpos = x.lastIndexOf(".");
if (atpos< 1 || dotpos<atpos+2 || dotpos+2>=x.length) {
alert("Not a valid e-mail address");
return false;
}
return true;
}
从提交按钮中删除onclick事件,并将onsubmit事件添加到表单中。
...
函数验证()
{
返回(verifyNull()&&verifyEmail());
}
函数verifyNull(){
var isValid=true;
if(!document.getElementById('username').value.trim().length){
isValid=false;
警报('请输入用户名');
}
else if(!document.getElementById('password').value.trim().length){
isValid=false;
警报(“请输入密码”);
}
返回有效;
}
函数verifyEmail(){
var x=document.getElementById('email')。值;
var atpos=x.indexOf(“@”);
var dotpos=x.lastIndexOf(“.”);
如果(atpos<1 | | dotpos=x.length){
警报(“不是有效的电子邮件地址”);
返回false;
}
返回true;
}
使用if-else
语句。假设有一个变量告诉您验证是否通过,称为formValidation
:
如果(formValidation==真){
打开(“path/to/page.html”,“_self”);
}否则{
//执行其他操作(验证失败)
}
要给出更详细的答案(如果您需要),则需要提供更多代码。HTML:-
<form onsubmit="return validation()">
.....
</form>
.....
JavasScript:-
<script>
function validation() {
var isValid = true;
//perform your validation on form and update isValid variable accordingly.
if(isValid) {
window.location = ''; // your desired location
}
return false; // always return false to prevent form from submission.
}
</script>
函数验证(){
var isValid=true;
//对表单执行验证,并相应地更新isValid变量。
如果(有效){
window.location='';//您想要的位置
}
return false;//始终返回false以防止表单提交。
}
终于有人向我显示了窗口。打开!哈哈,干杯!