当前位置: 代码迷 >> Java Web开发 >> jsp怎么样在表单页面验证用户名是否存在
  详细解决方案

jsp怎么样在表单页面验证用户名是否存在

热度:157   发布时间:2009-11-02 23:52:43.0
jsp怎么样在表单页面验证用户名是否存在

程序代码:
<form id="form1" name="login" method="post">
用户名:<input name="user" type="text" id="user" size="15" /><br /><br />
密 码:<input name="pass" type="password"  id="Pass" size="15" />
<br /><br />
<input type="submit" name="submit" value="登录"  /> &nbsp;
<input type="reset" name="submit2" value="取消"  />
</form>

如果输入错误的用户名,移走光标以后,到数据库里去查询,弹出窗口提示用户名不存在
请问,怎么实现?
搜索更多相关主题的帖子: 验证  页面  用户名  jsp  表单  

----------------解决方案--------------------------------------------------------
回复 楼主 柠檬可乐
ajax
----------------解决方案--------------------------------------------------------
我是用的javascript + javabean 写的
Javabean负责查询结果
javascript负责判断和输入
----------------解决方案--------------------------------------------------------
我知道用Javabean怎么做,但是用javascript怎么做啊
----------------解决方案--------------------------------------------------------
回复柠檬可乐
javascript用一个if语句判断javaBean里面查询的返回值
然后输出alert就可以了啊~~~~~~
还有什么我没说清楚的地方么?
----------------解决方案--------------------------------------------------------
<script type="javascript">
        function check(form)
        {
            if(form.user.value=="")
            {
                window.alert("用户名没有输入");
                return;
            }
            form.submit();
        }
</script>


<input type="button" name="submit" onClick="check(form1)" value="登录" />

不知道LZ的意思是不是这样
----------------解决方案--------------------------------------------------------
楼上的稍微改下,你那个是在点击BUTTON时才开始验证
LZ要的是移开光标验证,不过这个是有现成方法的
去API文档查下就知道了
----------------解决方案--------------------------------------------------------
程序代码:
<script language="javascript">
function check()
{
    if(login.user.value == "")
    {
        alert("用户名不能为空");
        login.user.focus();
        return false;
    }
    else {
    if(login.pass.value == "")
    {
   
        alert("密码不能为空");
        login.pass.focus();
        return false;
    }
    else{
    <%
    sql="select ManagerNo,ManagerPass * from Manager";
    rs=Bean.exeSQL(sql);
    boolean login_ok = false;
    while(rs.next()){
    if((login.user.value=="<%=rs.getString("ManagerNo")%>") && (login.pass.value=="<%=rs.getString("ManagerPass")%>"))
    {
    login_ok = true;
            break;
    }
    else
    login_ok = false;
    }%>
    }
    }   
    return true
}
</script>

帮忙看一下,这样错在哪里


表单我已经改成这样了
程序代码:
<form id="form1" name="login" method="post" action="shouye.jsp" onSubmit="return check()">








----------------解决方案--------------------------------------------------------
JavaScript里面穿插服务器端代码,可以这样写吗?其实楼主可以考虑用Ajax来做,在页面无刷新的情况下实现了验证功能。把参数传到servlet,在servlet里面进行判断,然后在客户端 接收响应即可。
----------------解决方案--------------------------------------------------------
if((login.user.value=="<%=rs.getString("ManagerNo")%>") && (login.pass.value=="<%=rs.getString("ManagerPass")%>"))
额,为什么还要在这里用《% %》这个符号?这里已经是Java程序段了啊

select ManagerNo,ManagerPass * from Manager
SQL语句中也没必要这么写,你都用getString的方法返回了用户名和密码了,
还有必要在里面查询这两样东西么?
----------------解决方案--------------------------------------------------------
  相关解决方案