jsp中判断语句和javacript中判断语句有一个小差别


    今天做了一个小例子,就是在jsp中的一个简单的判断:

  <%String strUserId = request.getParameter("login_user");
  String strPwd = request.getParameter("login_password");
 
  if(strUserId=="123"))
     { 
     if(strPwd=="123"))
      out.println("<script>alert('登陆成功');document.location = 'welcome.html'</script>"); 
      else  
      out.println("<script>alert('用户名或密码错误!');document.location = 'login.html'</script>");
     }
   else{
    out.println("<script>alert('用户名或密码错误!');document.location = 'login.html'</script>");
     
    
       }
 %>
这段代码运行起来出错,判断语句不执行。。这是为什么呢,是因为jsp代码中对字符类型不能用”==“来判断,要用”strUserId.equalsIgnoreCase("123")或者strUserId.equals("123")“,而在javasript中对字符类型是可以用”==“进行判断的,正确的代码应该是:

<%

  String strUserId = request.getParameter("login_user");
  String strPwd = request.getParameter("login_password");
 
  if(strUserId.equalsIgnoreCase("123"))
     { 
     if(strPwd.equalsIgnoreCase("123"))
      out.println("<script>alert('登陆成功');document.location = 'welcome.html'</script>"); 
      else  
      out.println("<script>alert('用户名或密码错误!');document.location = 'login.html'</script>");
     }
   else{
    out.println("<script>alert('用户名或密码错误!');document.location = 'login.html'</script>");
     
    
       }
 %>

 

 

posted @ 2009-09-27 18:19  mogu  阅读(2872)  评论(0编辑  收藏  举报