目的:
在 不重新加载网页的情况下,获得后端数据,
并且 作为 部分html代码 插入原网页。
思路:
1.页面1 使用ajax 发送request
//Ajax请求 实际就是 http请求
2.Controller 接受(GET)请求,调用其 方法,只不过返回的是另一个html里的fragment片段
3.DispatcherServlet 将模型数据 传递到 该fragment片段。
4.作为response返回给 页面1
5.页面1 里用 html容器.innerHTML=XMLHttpRequestObject.response 载入要插入的容器
//有理解错误来及时更正
//多练多记~加油
更进一步,了解AJAX 和 XMLHttpRequest:
//参考https://segmentfault.com/a/1190000004322487?utm_source=tag-newest
function sendAjax() {
//构造表单数据
var formData = new FormData();
formData.append('username', 'johndoe');
formData.append('id', 123456);
//创建xhr对象
var xhr = new XMLHttpRequest();
//设置xhr请求的超时时间
xhr.timeout = 3000;
//设置响应返回的数据格式
xhr.responseType = "text";
//创建一个 post 请求,采用异步
xhr.open('POST', '/server', true);
//注册相关事件回调处理函数
xhr.onload = function(e) {
if(this.status == 200||this.status == 304){
alert(this.responseText);
}
};
xhr.ontimeout = function(e) { ... };
xhr.onerror = function(e) { ... };
xhr.upload.onprogress = function(e) { ... };
//发送数据
xhr.send(formData);
}