本文最后更新于:2023年11月9日 晚上
Ajax的作用
Ajax 是一种在无需重新加载整个网页的情况下,能够更新网页部分内容的技术,实现页面和 web 服务器之间数据的异步传输。
相当于只刷新页面的一部分而并不刷新整个页面(局部刷新而并非全局刷新)。
冷知识:Ajax全称 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML)
这里将一个简单的Ajax案例:
获取input输入框中的值并将其以Ajax异步请求的方式请求请求后台,再由后台响应我们所需的数据放到div中(div中无内容)
从而实现请求与响应,显示数据,并且请求为异步请求(Ajax)不刷新整个页面(局部刷新)
方式呢就是这么个方式,具体使用根据开发中的应用场景(比如:评论,分页,搜索)
JS(javascript)方式编写Ajax:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
| <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Ajax</title> </head> <body> <center> <%--JS方式的Ajax--%> <div id="div"></div> <br/> 输入:<input type="text" id="info"> <input type="button" value="提交" onclick="ajax()">
</center> </body> <script type="text/javascript">
var xmlHttpRequest;
function ajax() { var info = document.getElementById("info").value;
xmlHttpRequest = new XMLHttpRequest;
xmlHttpRequest.open("post", "ajax/ajaxDemo", true);
xmlHttpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttpRequest.send("info=" + info); xmlHttpRequest.onreadystatechange = callBack; }
function callBack() { if (xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200) {
var data = xmlHttpRequest.responseText; document.getElementById("div").innerHTML = data; } }
</script> </html>
|
JQ(jquery)方式使用Ajax:
看了上面JS的方式编写Ajax,写起来的确是有些繁琐
接下来使用jquery方式编写4种类似的Ajax,相比JS方式简便很多
$.ajax()方法中属性详解请参考: https://www.cnblogs.com/tylerdonet/p/3520862.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
| <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Jquery -Ajax</title> </head> <body> <center> <%--JQ方式的ajax--%> <div id="div">ajax:</div> <br/> 输入:<input type="text" id="info"> <input type="button" value="提交" onclick="ajax()">
</center> </body> <script type="text/javascript" src="js/jquery-3.1.1.min.js"></script> <script type="text/javascript"> function ajax() { var info = $("#info").val();
$.ajax({ url: "ajax/ajaxDemo", async: true, type: "get", data: "info=" + info, dataType: "text", success: function (data) { $("#div").html(data); }, error: function () { $("#div").html("服务器响应失败!"); } });
$.get( "ajax/ajaxDemo", "info=" + info, function (data){ $("#div").html(data); }, "text" );
$.post( "ajax/ajaxDemo", "info=" + info, function (data){ $("#div").html(data); if(data == null || data == ""){ alert("服务器响应为null"); } }, "text" );
$("#div").load( "ajax/ajaxDemo", "info="+info ); } </script> </html>
|
本篇文章还缺少一个重要的知识点、也是和Ajax挂钩的,那就是JSON数据格式,本人也正在学习将JSON类型数据请求到后台再响应JSON数据格式给前台。到时候我会在发一篇文章介绍JSON或者到时候会修改本篇文章将JSON知识点补上。
爱你所爱,行你所行,听从你心,无问西东。