如何用javascript判断在修改密码时输入的旧密码是否正确以及两次输入新密码是否一样

<script language="javascript">

function Check()
{
String o=String.valueOf(document.form1.oldpass.text);
String n1=String.valueOf(document.form1.newpass1.text);
String n2=String.valueOf(document.form1.newpass2.text);
if(!o.equals(s1))
{
alert("旧密码输入错误,请重新输入正确的密码,默认密码为学号后两位,忘记密码请联系管理员");
return false;
}
else if(!n1.equals(n2))
{
alert("两次输入的密码不同,请重新输入");
return false;
}
else
{
return true;
}
}

</script>

我用这个函数判断输入的旧密码是否正确,以及两次输入的新密码是否一致。但是不管输入什么,都能提交给下一个jsp,都能返回true。改怎么修改这个函数呢?(form1中有三个text文本框,类型都是text,正确的旧密码保存在session中,s1是保存这个旧密码的字符串。哪位大侠帮帮小弟,小弟初学java。

你首先经取得旧密码,然后返回给js做判断。。。等旧密码验证成功后,再来判断 输入 的两个新密码是否相同。。。这肯定要用到ajax异步传输。。。利用输入的旧密码去匹配数据库里面的密码,如果能匹配得上,说明旧密码正确 ,再进行两次输入 的判断 。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-09
在js中不用equals,直接用==就可以!把你的equals全部换成==,应该就可以了!
第2个回答  2013-11-09
如果判断 旧密码 肯定不能在客户端进行判断,只能把输入的密码,用ajax 发送到后台进行验证,返回验证结果。
判断新密码是否相等:
if(n1==n2)
{
return true;

}
else
{
alert("两次新密码输入不一致。");
return false;

}
最好用 jquery,省了很多操作。本回答被网友采纳