原生态的Ajax和Jquery的Ajax的实例

本文使用了servlet来演示Ajax

原生态的Ajax

1.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>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>原生态Ajax</title>
<script src="js/jquery-1.10.2.js"></script>
<script type="text/javascript">
	
	function validate(){
		var name = $("#txtUserName").val();
		if(name == "" || name == null){
			$("#hdUserName").html("用户名不能为空!");
		}else{
			//1:创建XMLHttpRequest对象
			xmlHttpRequest = createXMLHttpRequest();
			//2:设置回调函数
			xmlHttpRequest.onreadystatechange = callback;
			//3:初始化XMLHttpRequest组件
			var url = "AjaxServlet?name="+name;//服务器端url地址
			xmlHttpRequest.open("post",url,true);
			//4:发送请求
			xmlHttpRequest.send("key=123");
		}
		
		//创建XMLHttpRequest
		function createXMLHttpRequest(){
			if(window.XMLHttpRequest){		//返回值为true时,说明是新版本IE浏览器
				return new XMLHttpRequest();
			}else{
				return new ActiveXobject("Microsoft.XMLHTTP");
			}
		}
		//ajax回调函数
		function callback(){
			if(xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200){
				var data = xmlHttpRequest.responseText;
				if(data == "false"){
					$("#hdUserName").html("用户名已被使用!");
				}else{
					$("#hdUserName").html("用户名可以使用!");
				}
			}
		}
		
	}
</script>
</head>
<body>
	<form action="servlet/AjaxServlet" method="post">
		<table>
			<tr>
				<td>
					用户名:<input type="text" id="txtUserName" name="txtUserName" οnblur="validate()">
				</td>
				<td><div id="hdUserName"></div></td>
			</tr>
		</table>
	</form>
</body>
</html>
AjaxServlet.jsp
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		String name = request.getParameter("name");
		boolean flag = false;
		if("admin".equals(name)){
			flag = false;
		}else {
			flag = true;
		}
		PrintWriter out = response.getWriter();
		out.print(flag);
		out.flush();
		out.close();
	}

Jquery的Ajax

2.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>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Jquery-Ajax</title>
<script src="js/jquery-1.10.2.js"></script>
<script type="text/javascript">
	
	$(function(){
		$("#txtUserName").blur(function(){
			var username = $('#txtUserName').val();
			$.ajax({
				type:'post',
				url:"servlet/AjaxServlet?name="+username,
				data:'flag',
				success:function(data){
					if(data == "false"){
						$("#hdUserName").html("NO!");
					}else{
						$("#hdUserName").html("YES!");
					}
				}
			});
		});
		
	});
		
</script>
</head>
<body>
	<form action="servlet/AjaxServlet" method="post">
		<table>
			<tr>
				<td>
					用户名:<input type="text" id="txtUserName" name="txtUserName" >
				</td>
				<td><div id="hdUserName"></div></td>
			</tr>
		</table>
	</form>
</body>
</html>
这个servlet同上



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值