八、$.post()方法
1、通过远程HTTP POST请求载入信息。
2、它与$.get()方法的结构和使用方式都相同。
九、get请求和post请求的区别
1、GET请求将参数跟在URL后进行传递,而POST请求则作为HTTP请求实体内容发送给服务器。在Ajax请求中,这些区别对用户是不可见的。
2、GET方式对传输的数据有大小限制(通常不大于2KB),而POST方式传递的数据要比GET方式大的多。
3、GET方式请求的数据会被浏览器缓存起来,因此其他人就可以通过浏览器的历史记录中读取到这些数据,例如密码等,所以GET请求安全性会有问题,而POST相对就可以避免这些问题。
十、$.getScript()方法
1、通过HTTP GET请求载入并执行一个JavaScript文件。
语法:
$.getScript(url, [callback])
说明:
(1)url:待载入JS文件地址。
(2)callback:成功载入后回调函数。
十一、$.getJson()方法
1、通过HTTP GET请求载入JSON数据。
语法:
$.getJSON(url, [data], [callback])
说明:
(1)url:发送请求地址。
(2)data:待发送key/value参数。
(3)callback:载入成功时回调函数。
十二、getScript()方法和getJSON()方法例子
getother.html
- html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>test getothertitle>
-
- <script type="text/javascript" src="script/jquery-3.6.0.js">script>
- <script type="text/javascript">
- $(function(){
- $("input:eq(0)").click(function(){
- //加载js文件功能
- $.getScript("script/my.js",function(){
- f();
- });
- });
-
- $("input:eq(1)").click(function(){
- //加载外部json文件功能
- $.getJSON("script/myJson.json",function(data){
- var name = data.name;
- var age = data.age;
- $("
用户名:"
+name+",年龄:"+age+"").appendTo($("#content")); - });
- });
-
- $("input:eq(2)").click(function(){
- //加载外部json文件功能
- $.getJSON("http://localhost:8080/AjaxPro/GetJSONServlet",function(data){
- //获得json数据
- var students = data.students;
- var res = "
\n"
; - for (var i=0;i
length;i++){ - //从json数组里取出json对象
- var student = students[i];
- res+="
- "
+student.name+"--"+student.password+"\n"; - }
- res+="";
- //把标签字符串生成一个节点对象,追加到content元素内
- $(res).appendTo($("#content"));
- });
- });
- })
- script>
-
- head>
- <body>
- <input type="button" value="getScript" /><br/>
- <input type="button" value="getJSON" /><br/>
- <input type="button" value="getWebJSON" /><br/>
- <div id="content">div>
- body>
- html>
十三、$.ajax()方法
1、$.ajax()方法是jQuery最底层的Ajax实现。前面所讲的那些操作ajax的方法都是基于$.ajax()方法构建的,因此此方法可以替换前面的所有方法。
语法:
$.ajax({ url, [settings] })
说明:
(1)url:发送请求地址。
(2)settings:ajax请求参数设置。所有选项都是可选的。
十四、$.ajax()常用的请求参数
1、type:设置请求方式,主要是GET和POST,默认是GET
2、timeout:设置请求超时时间
3、data:发送到服务器的数据(以键值对形式发送)
4、dataType:预期服务器返回的数据类型,比如:xml、json、text等
5、beforeSend:发送请求前可以修改XMLHttpRequest对象的函数,例如添加自定义HTTP头信息等
6、complete:设置完成后调用的回调函数,请求成功、失败均会调用
7、success:请求成功后被调用的回调函数
8、error:请求失败后被调用的回调函数
9、global:默认为true,表示是否触发全局ajax事件
注意:如果需要使用$.ajax()方法来进行ajax开发,那么上面这些常用参数都必须了解。jQuery的内容比较多,有些知识我们还得通过官方的api来进行巩固学习
十五、例子程序
ajax.html
- html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>test ajaxtitle>
-
- <script type="text/javascript" src="script/jquery-3.6.0.js">script>
- <script type="text/javascript">
- $(function(){
- $("input:eq(0)").click(function(){
- $.ajax({
- url: "GetJSONServlet",
- type: "get",
- dataType: "json",
- success: function(data){
- //获得json数据
- var students = data.students;
- var res = "
\n"
; - for (var i=0;i
length;i++){ - //从json数组里取出json对象
- var student = students[i];
- res+="
- "
+student.name+"--"+student.password+"\n"; - }
- res+="";
- //把标签字符串生成一个节点对象,追加到content元素内
- $(res).appendTo($("#content"));
- },
- error: function(data){
- alert("失败啦");
- },
- complete: function(XMLHttpRequest, textStatus){
- alert(XMLHttpRequest.status);
- }
- })
- });
-
- });
- script>
-
- head>
- <body>
- <input type="button" value="$.ajax()" /><br/>
- <div id="content">div>
- body>
- html>