• Ajax+Struts做登录判断


    Action类里:

    /*
     * 登录
     */
    public ActionForward doLogin(ActionMapping  mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws IOException 
    	{
        	
    		//获得表单数据
    		int uid=Integer.parseInt(request.getParameter("petID"));
    		String pwd=request.getParameter("pwd");
    		PrintWriter out=response.getWriter();
    		//根据ID获得其信息
    		PetInfo info=petInfoBiz.getPetInfoByID(uid);
    		if(info==null)
    		{
    	               out.print(0);
    		      return null;
    		}
    		else if(!petInfoBiz.login(uid, pwd))
    		{
    		       out.print(1);
    		       return null;
    		}
    		else if(petInfoBiz.login(uid, pwd))
    		{
    		       out.print(2);
    		       return null;
    		}
    		
    		return null;
    	}
    



    页面的javascript部分(没有使用框架):

    //根据IE的类型创建一个XmlHttpRequest对象
    		function createXmlHttpRequest()
    		{
    			if(window.ActiveXObject)
    			{
    				return new ActiveXObject("Microsoft.XMLHTTP");
    			}
    			else if(window.XMLHttpRequest)
    			{
    				return new XMLHttpRequest;
    			}
    		}
    		
    		var xmlHttpRequest;	
    		//根据宠物编号发送请求到服务器	
    		function requestServer()
    		{ 
    		    var loginState=document.getElementById("loginState");
    		    with(document.petForm)
    		    {
    		      
    			  if(petID.value=="")
    			  {
    			       loginState.innerText="请填写宠物编号!";
    			  }
    			  else if(isNaN(petID.value))
    			  {
    			       loginState.innerText="编号不合法";
    			  }
    			  else if(pwd.value=="")
    			  {
    			       loginState.innerText="请填写密码";
    			  }
    			  else
    			  {			 	
    					var url="doPetInfo.do?methodName=doLogin&petID="+petID.value+"&pwd="+pwd.value;
    					//创建XMLHttpRequest组件
    					xmlHttpRequest=createXmlHttpRequest();
    					//设置回调函数,让其等待服务器的响应
    					xmlHttpRequest.onreadystatechange=doLogin;
    					//初始化xmlHttpRequest组件,传入URL
    					xmlHttpRequest.open("GET",url,true);
    					//发送请求
    					xmlHttpRequest.send(null);
    			  }
    		   }
    	    }
    		//登录,获得服务器返回的信息并做出相应提示
    		function doLogin()
    		{
    		    var loginState=document.getElementById("loginState");
    			if(xmlHttpRequest.readyState==0)
    			{
    				loginState.innerText="未初始化...";
    			}
    			if(xmlHttpRequest.readyState==1)
    			{
    				loginState.innerText="初始化中...";
    			}
    			if(xmlHttpRequest.readyState==2)
    			{
    				loginState.innerText="正在向服务器发送请求...";
    			}
    			if(xmlHttpRequest.readyState==3)
    			{
    				loginState.innerText="正在验证登录信息...";
    			}
    			if(xmlHttpRequest.readyState==4)
    			{
    				loginState.innerText="验证完成...";
    			}
    			if(xmlHttpRequest.readyState==4 && xmlHttpRequest.status==200)
    			{
    				var text=xmlHttpRequest.responseText;
    				if(text=="0")
    				{
    				    loginState.innerText="此ID不存在";
    				}
    				else if(text=="1")
    				{
    				    loginState.innerText="密码错误";
    				}
    				else if(text=="2")
    				{
    				    loginState.innerText="验证成功...";
    					location.href="doPetInfo.do?methodName=doInit&petID="+document.petForm.petID.value;
    				}
    			}
    		}
    		
    		
    




    表单部分:

    <span id="loginState" style="color:red"></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    宠物ID:<input type="text" name="petID" size="6" value="">
    密码:<input type="password" name="pwd" size="6" value="">&nbsp;&nbsp;&nbsp;&nbsp;
    <button onclick="requestServer()">登录</button>&nbsp;&nbsp;
    
  • 相关阅读:
    作业要求 20181030-1 Alpha发布用户使用报告
    Scrum立会报告+燃尽图(Beta阶段第二周第二次)
    Scrum立会报告+燃尽图(Beta阶段第二周第一次)
    20181113-3 Beta阶段贡献分配规则
    20181113-1 版本控制报告
    Scrum立会报告+燃尽图(Beta阶段第七次)
    Scrum立会报告+燃尽图(Beta阶段第六次)
    Scrum立会报告+燃尽图(Beta阶段第五次)
    Scrum立会报告+燃尽图(Beta阶段第四次)
    Scrum立会报告+燃尽图(Beta阶段第三次)
  • 原文地址:https://www.cnblogs.com/xcxcxcxc/p/5541229.html
Copyright © 2020-2023  润新知