JQuery的Ajax实现+SpringMVC

Ajax概述

AjaxAsynchronous JavaScript and XML的缩写,也叫做异步的JavaScript和XML。

同步和异步的区别

同步当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面进入假死状态,当这个AJAX执行完毕后才会继续运行其他代码,页面假死状态才会解除。也就是说,如果用ajax的话,同步那就没有什么意义了。

异步:当JS代码加载到当前的AJAX的时候,这时候浏览器在发送请求的同时,也在解析页面的代码,也就是说浏览器同时在做两件事。

JQuery中的ajax

我们都知道JQuery是对js的一种封装,通过它可以很熟练的使用jQuery来操作DOM对象,实现对页面的动态渲染。同样的JQuery中也对原生态的js中的Ajax进行了封装,封装成了一个方法ajax()。通过各这个方法传递参数,就可以实现异步请求。至于方法中的参数,大家可以去查阅资料JQuery中的Ajax,在这里就是使用一些常见的方法参数。

测试页面testAjax1.jsp

方法与之前的不不变,只是页面中进行了修改
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'login.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<script type="text/javascript" src="${pageContext.request.contextPath }/js/jquery-1.9.1.min.js"></script>
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

	<script type="text/javascript">
		$(function() {
			$("#username").blur(function() {
				$.ajax({
					type: "POST",
					url: "${pageContext.request.contextPath}/ajax/testAjax.do?time=" + new Date(),
					data: {
						username: $("#username").val(),
					},
					async: true,
					dataType: "text",
					success: function(result) {
						$("#red").html(result);
					}
				});
			});
		});
	</script>
	

  </head>
  
  <body>
    <form>
    	username:<input type="text" name="username" id="username"><span id="red"></span><br />
    	password:<input type="password" name="password"><br />
    	address:<input type="text" name="address"><br />
    	<input type="submit" value="login">
    </form>
  </body>
</html>

总结:

  • 注意引入JQuery的js文件,否则会报错的。
  • async:true,表示是异步请求,也只有为true的时候,ajax才会有意义。
  • 后台请求路径的方法和原生态的js中的Controller是同一个方法
  • 至于Struts2中的异步请求和这个一样,只是修改路径和页面。



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值