Ajax异步交互

学习目标:

掌握Ajax

学习内容:

1、 简介 2、 XMLHttpRequest 3、 Get和Post 4、 JSON

学习时间:

1、2021年10月26日 2、 2021年10月28日

学习产出:

1、 技术笔记 1 遍 2、登录界面1份

Ajax简介

Ajax 全称为:“Asynchronous JavaScript and XML”(异步JavaScript 和 XML),

使用Ajax我们可以无刷新状态更新页面,并且实现异步提交,提升了用户体验

Ajax其实质是利用浏览器提供的一个特殊的对象(XMLHttpRequest)异步的向服务器发送请求,服务器返回部分数据,浏览器让你去利用这些数据对页面做部分的更新,整个过程,页面无刷新,不打断用户的操作。

创建XMLHttpRequest对象

XMLHttpRequest对象:发送请求到服务器并获得返回结果

所有现代浏览器都内建了XMLHttpRequest对象

​ new XMLHttpRequest();

XMLHttpRequest

JavaScript对象XMLHttpRequest是整个Ajax技术的核心,它提供了异步

发送请求的能力 。

常用方法:

常用属性:

​ • onreadystatechange:事件,指定回调函数

​ • readystate: XMLHttpRequest的状态信息
常用属性
​ • status:HTTP的状态码
状态码
​ • responseText:获得响应的文本内容

Get方式/Post方式

Get方式提交:

​ xmlhttp.open(“GET”,“testServlet?name=”+userName,true); xmlhttp.send(null);

Post方式提交 :

​ xmlhttp.open(“POST”,“testServlet”,true);

POST方式需要自己设置http的请求头

​ xmlhttp.setRequestHeader(“Content-Type”,“application/x- www-form-urlencoded”);

POST方式发送数据

​ xmlhttp.send(“name=”+userName);

JSON

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式

​ 数据在键值对中

​ 数据由逗号分隔

​ 大括号保存对象

​ 方括号保存数组

语法

JSON 键值对是用来保存 JS 对象的一种方式,和 JS 对象的写法也大同小异,键/值对组合中的键名写在前面并用双引号 “” 包裹,使用冒号 : 分隔,然后紧接着值:

{“firstName”: “John”}

{“name”:”value”,”sex”:”男”}

Java对象转JSON

在异步交换数据时,java对象不能直接被传递给js,所以需要先把java对

象转换为JSON格式字符串,把字符串响应给客户端,再由客户端将

JSON字符串转换为js对象即可( $.parseJSON(jsonstr) )。

	Gson gson = new Gson();
    String s = gson.toJson(user);
    out.println(s);	
	var obj = $.parseJSON(res);//json字符串转为js对象

Jquery实现AJAX-$.get()

$.get()是一个简单的 GET 请求功能。请求成功时可调用回调函数。

$.get(url,[data],[callback],[type])

​ url:发送请求地址。

​ data:待发送 Key/value 参数。

​ callback:发送成功时回调函数。

​ type:返回内容格式,xml, html, script, json, text, _default

注意:请求是通过 URL 提交的

提交有大小限制(2KB)

			//  url               data                 回调函数	
		$.get("../student",$("#formId").serialize(),function(res){
                
            },"json");//返回内容格式

Jquery实现AJAX-$.post()

这是一个简单的 POST 请求功能。请求成功时可调用回调函数

$.post(url,[data],[callback],[type])

​ url:发送请求地址。

​ data:待发送 Key/value 参数。

​ callback:发送成功时回调函数。

​ type:返回内容格式,xml, html, script, json, text, _default

POST 请求是 HTTP 消息实体提交的,提交大小不受限制

$("#testform").serialize() 请求发送表单数据

	      //  url               data                 回调函数	
	$.post("../student",$("#formId").serialize(),function(res){
            
        },"json");//返回内容格式
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值