Ajax:只刷新局部页面的技术
文章图片
JavaScript :更新局部的网页 XML :一般用于请求数据和响应数据的封装 XMLHttpRequest 对象:发送请求到服务器并获得返回结果 CSS :美化页面样式 异步 :发送请求后 不等 返回结果,由回调函数处理结果 一、 Ajax是什么?
概念: ASynchronous JavaScript And XML 异步的JavaScript 和 XML
异步和同步:客户端和服务器端相互通信的基础上
-> 客户端必须等待服务器端的响应。在等待的期间客户端不能做其他操作。
->客户端不需要等待服务器端的响应。在服务器处理请求的过程中,客户端可以进行其他的操作
Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
->通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
-> 传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。
二、实现方式:
1.原生的JS实现方式(了解)//javascript代码
var xmlhttp;
//1.创建核心对象
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
//2. 建立连接
/*参数:
1. 请求方式:GET、POST
* get方式,请求参数在URL后边拼接。send方法为空参
* post方式,请求参数在send方法中定义
2. 请求的URL:
3. 同步或异步请求:true(异步)或 false(同步)
*/
//将URL改成你自己的地址
xmlhttp.open("GET", "/testDemo?name=zhangsan", true);
//3、将请求发送到服务器。
xmlhttp.send();
//4.接受并处理来自服务器的响应结果
//获取方式 :xmlhttp.responseText
//当xmlhttp对象的就绪状态改变时,触发事件onreadystatechange。
//接收服务器端的响应(readyState=4表示请求已完成且响应已就绪status=200表示请求响应一切正常)
xmlhttp.onreadystatechange = function () {
//判断readyState就绪状态是否为4,判断status响应状态码是否为200
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
//获取服务器的响应结果
var responseText = xmlhttp.responseText;
alert(responseText);
}
}
java后端接收代码如下(示例):
//.取得参数,
String name=request.getParameter("name");
System.out.println(name);
//打印输出取得的参数
//将数据信息回写给ajax
response.getWriter().write("hello")
2.JQeury实现方式
代码如下(示例):
1. $.ajax()
-> 语法:$.ajax({键值对});
代码如下(示例):
//使用$.ajax()发送异步请求
$.ajax({
url: "/testDemo", // 请求路径
type: "POST", //请求方式
data: {"name": "zhangsan"},//请求参数
dataType: "JSON", //设置接受到的响应数据的格式,还有很多格式,如:text
//async:false,//默认是true(异步),false(同步)
success: function (data) {//响应成功后的回调函数
alert(data);
},
error: function () {
alert("出错啦...");
},
});
//java代码和上述java代码一样即可
2. $.get():发送get请求(ajax的简化)
-> 语法:$.get(url, [data], [callback], [type])
* url:请求路径
* data:请求参数
* callback:回调函数
* type:响应结果的类型
代码如下(示例):
$.get("/testDemo",{name:"zhangsan"},function (data) {
alert(data);
},"text")
3. $.post():发送post请求(ajax的简化)
->语法:$.post(url, [data], [callback], [type])
* url:请求路径
* data:请求参数
* callback:回调函数
* type:响应结果的类型
代码如下(示例):
$.post("/testDemo",{name:"zhangsan"},function(data) {
alert(data);
},"text");
jsp页面:
input {
width: 260px;
height: 25px;
}
input:focus {//按钮点击后改变颜色
background: #10a0e9;
}
你好啊!!我叫:
【eclipse|Ajax(只刷新局部页面的技术)】
推荐阅读
- Bootstrap框架|Bootstrap01
- Spring Security 一键接入验证码登录和小程序登录
- selenium|selenium自动化测试详细教程
- 数据安全|数据分类分级方法及典型应用场景
- Java|一个小的知识点 —— Java 静态导入
- Java|一个小的知识点 —— Java中三种初始化数据域的方法
- 那些年,我们一起做过的 Java 课后练习题(71 - 75)
- 拉钩Java工程师高薪训练营
- 沙龙(如何使信息系统更加稳定)