这是我的表格:
<form name="loginform" method="POST" action="login" onsubmit="return validateLogin()">
<div> User Name :<input class="input" name="username" type="text" /> </div>
<div> Password :<input class="input" name="password" type="password" /> </div>
<div> id="yaha" style="color:red;font:bold 16px garamond"</div>
<input style="font-weight:bold;" type="submit" value="Login" />
javascript代码如图所示:
function validateLogin()
{
var x1=document.forms["loginform"];
if(//validations)
{
return false;
}
else
{ goajax(x1.username.value,x1.password.value);}
}//validate login ends...
var requ = null;
function goajax( u, p)
{
requ=new XMLHttpRequest();
//code for posting ajax data
requ.onreadystatechange=display;
}
function display()
{
if(requ.readyState == 4)
{
if(requ.status == 200)
{
var message = requ.responseText;
alert("message==="+message);
var x;
if(message.trim() == "ok")
{
var x1=document.forms["loginform"];
return true;
}
else if(message.trim() == "no")
{
document.getElementById('yaha').innerHTML="Invalid Username or Password!!!";
x1.password.value="";
return false;
}
else if(message.trim() == "nv")
{
document.getElementById('yaha').innerHTML="Account not Activated";
return false;
}
}
}
}
我的问题是:我正在根据需要从服务器获取响应,但如果出现不希望的响应,即使在“返回 false”之后,表单也会被提交;(见函数 display())
请向下滚动到函数 display() 我不希望在消息为“no”或“nv”时提交表单。基本上“return false”不起作用