0
javascript函數似乎沒有被調用,驗證被跳過並直接進入檢查頁面。 我需要在移動到預定目標(即check.jsp頁面)之前驗證表單元素。JSP動作和提交問題
我知道有更好的方法來驗證的形式,但我想知道如何把它做這樣一來,任何幫助表示讚賞:)
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form name="validate" onsubmit="return validateall(this)" action="check.jsp" >
Username:<input type="text" name="uname">
Password:<input type="password" name="pwd">
Email:<input type="text" name="email">
<input type="submit" value="Submit" name="Submit">
</form>
<script>
function validateall(form)
{
var errlist="";
<% out.println("The function was called"); %>
errlist+=valuname(form.uname);
errlist+=valpwd(form.pwd);
errlist+=valemail(form.email);
if(errlist!="")
{
alert("Some fields need to be corrected");
return false;
}
alert("Sign Up successful");
return true;
}
function valuname(fld)
{
var error=""
if(fld.value=="")
{
error+="Cannot leave username empty";
fld.style.background='Red';
}
var illegalChars=/\W/;
else if((fld.value.length>=5))||(fld.value.length<=15))
{
error+="The username should be within 5 and 15 characters";
fld.style.background='Red';
}
else if(illegalChars.test(fld.value))
{
fld.style.background='Red';
error+="No illegal characters!";
}
return error;
}
function valpwd(fld)
{
var error=""
if(fld.value=="")
{
error+="Cannot leave password empty";
fld.style.background='Red';
}
var illegalChars=/[\W_]/;
else if((fld.value.length>=7))||(fld.value.length<=15))
{
error+="The username should be within 5 and 15 characters";
fld.style.background='Red';
}
else if(illegalChars.test(fld.value))
{
fld.style.background='Red';
error+="No illegal characters!";
}
return error;
}
function valemail(fld)
{
var error=""
if(fld.value=="")
{
error+="Cannot leave password empty";
fld.style.background='Red';
}
var illegalChars=/[\(\)\<\>\,\;\:\\\"\[\]]/;
else if(illegalChars.test(fld.value))
{
fld.style.background='Red';
error+="No illegal characters!";
}
return error;
}
</script>
</body>
</html>
是否有任何鏈路?如果不行,我會部署並檢查。 – ambarox
檢查我的答案@ambarox –
謝謝,我會檢查出來。 – ambarox