加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Ajax无刷新用户登录

发布时间:2020-12-16 03:34:16 所属栏目:百科 来源:网络整理
导读:代码: login.jsp %@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"htmlheadtitle无刷新用户登录/titlemeta

代码:

login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>无刷新用户登录</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<script>

	function getXMLHTTPRequest() {
		var xRequest = null;
		if (window.XMLHttpRequest) {
			xRequest = new XMLHttpRequest();
		}
		else if (window.ActiveXObject) {
			xRequest = new ActiveXObject("Microsoft.XMLHTTP");
		}
		return xRequest;
	}
	
	function sendRequest(req,url,params,HttpMethod) {
		if (!HttpMethod) {
			HttpMethod = "POST";
		}
		if (req) {
			req.open(HttpMethod,true);
			req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			req.onreadystatechange = processRequest;
			req.send(params);
		}
	}
	//创建浏览器兼容的XMLHttpRequest对象
	var xmlhttp = getXMLHTTPRequest();
	function dologin() {
		var name = document.getElementById("uname").value;
		var pwd = document.getElementById("upwd").value;
		if (name == "") {
			return false;
		}
		else if (pwd == "") {
			return false;
		} else {
			sendRequest(xmlhttp,"LoginServlet","username=" + name + "&userpwd=" + pwd,"POST");
		}
	}


	function processRequest() {
		if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
			var prompt = document.getElementById("login");
			var str = xmlhttp.responseText;
			if (str != 0) {
				prompt.innerHTML = "欢迎  <b>" + str + "</b>  登录。" + "<a href='login.jsp'>重新登录</a>";
			} else {
				document.getElementById("error").innerHTML = "用户名或密码错误";
			}

		}
	}
</script>
</head>

<body>
	<div id="login">
		<label>登录名</label> <input type="text" id="uname" value="" /><br />
		<label>密码</label>
		<input type="password" id="upwd" value="" />
		<label id="error"></label><br>
		<input type="button" value="登录" onclick="dologin()" />
	</div>
</body>
</html>

LoginServlet.java
package com.servlet;
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	public LoginServlet() {
		super();
	}

	public void doGet(HttpServletRequest request,HttpServletResponse response)
			throws ServletException,IOException {

		doPost(request,response);
	}

	public void doPost(HttpServletRequest request,IOException {
		String name = request.getParameter("username");
		String pwd = request.getParameter("userpwd");
		PrintWriter out = response.getWriter();
		if (name.equals("AJAX") && pwd.equals("AJAX"))
			out.print(name);
		else
			out.print(0);
		out.flush();
		out.close();
	}

	public void init() throws ServletException {
	}

}

截图:



(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读