jQuery之AJAX学习与使用

一、jQuery - AJAX 简介

  Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。
  通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

二、jQuery - AJAX的常用方法

load()从服务器加载数据,并把返回的数据放置到指定的元素中

  语法

$(selector).load(url,data,function(response,status,xhr))
url必需。规定您需要加载的 URL。
data可选。规定连同请求发送到服务器的数据。
function(response,status,xhr)可选。规定 load() 方法完成时运行的回调函数。  额外的参数:response - 包含来自请求的结果数据  status - 包含请求的状态  (“success”、“notmodified”、“error”、“timeout”、“parsererror”)  xhr - 包含 XMLHttpRequest 对象
$.ajax()执行异步 AJAX 请求

  定义和用法
    ajax() 方法用于执行 AJAX(异步 HTTP)请求。
    所有的 jQuery AJAX 方法都使用 ajax() 方法。该方法通常用于其他方法不能完成的请求。

  语法

$.ajax({name:value, name:value, ... })
url规定发送请求的 URL。默认是当前页面。
type规定请求的类型(GET 或 POST)。
data规定要发送到服务器的数据。
dataType预期的服务器响应的数据类型。
success(result,status,xhr)当请求成功时运行的函数。
async布尔值,表示请求是否异步处理。默认是 true。
error(xhr,status,error)如果请求失败要运行的函数。
$.get()使用 AJAX 的 HTTP GET 请求从服务器加载数据

  语法

$.get(URL,data,function(data,status,xhr),dataType)
URL必需。规定您需要请求的 URL。
data可选。规定连同请求发送到服务器的数据。
function(data,status,xhr)可选。规定当请求成功时运行的函数。额外的参数:data - 包含来自请求的结果数据status - 包含请求的状态(“success”、“notmodified”、“error”、“timeout”、“parsererror”)xhr - 包含XMLHttpRequest 对象
dataType可选。规定预期的服务器响应的数据类型。默认地,jQuery 会智能判断。可能的类型:“xml” - 一个 XML 文档"html" - HTML 作为纯文本"text" - 纯文本字符串"script" - 以 JavaScript 运行响应,并以纯文本返回"json" - 以 JSON 运行响应,并以 JavaScript 对象返回"jsonp" - 使用 JSONP 加载一个 JSON 块,将添加一个 “?callback=?” 到 URL 来规定回调
$.post()使用 AJAX 的 HTTP POST 请求从服务器加载数据

  语法

$(selector).post(URL,data,function(data,status,xhr),dataType)
URL必需。规定将请求发送到哪个 URL。
data可选。规定连同请求发送到服务器的数据。
function(data,status,xhr)可选。规定当请求成功时运行的函数。额外的参数:data - 包含来自请求的结果数据status - 包含请求的状态(“success”、“notmodified”、“error”、“timeout”、“parsererror”)xhr - 包含 XMLHttpRequest 对象
dataType可选。规定预期的服务器响应的数据类型。默认地,jQuery 会智能判断。可能的类型:“xml” - 一个 XML 文档,“html” - HTML 作为纯文本,“text” - 纯文本字符串,“script” - 以 JavaScript 运行响应,并以纯文本返回,“json” - 以 JSON 运行响应,并以 JavaScript 对象返回,“jsonp” - 使用 JSONP 加载一个 JSON 块,将添加一个 “?callback=?” 到 URL 来规定回调
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jquery ajax</title>
<script type="text/javascript" src="js/jquery-3.5.1.js"></script>
<script type="text/javascript">
 $(function(){
	//测试load
	$("#but1").click(function(){
		$("#div1").load("http://localhost:8080/JqueryAjax/main",
				function(resp,status){
					if(status=="success"){
						$("div").html("<table border='1px' width='500px'></table>");
						//将得到的json字符串转换成json对象
						var jsonobj=eval("("+resp+")");
						$(jsonobj).each(function(index,element){
							var tdstring="<td>"+element.userid+
					        "</td><td>"+element.username+
							"</td><td>"+element.userage+
							"</td><td>"+element.useraddress+
							"</td>";
							//$('<tr></tr>').html(tdstring).appendTo('table');
							$("table").append($('<tr></tr>').html(tdstring));
						});
					}
		});
	});
	
	//测试ajax的get请求,不带参数
	$("#but2").click(function(){
		$.ajax({
			url:"http://localhost:8080/JqueryAjax/main",
			type:"GET",
			dataType:"json",
			success:function(resp,status){
				$("#main1").empty();
				$(resp).each(function(index,element){
					var trstring="<tr><td>"+element.userid+
			        "</td><td>"+element.username+
					"</td><td>"+element.userage+
					"</td><td>"+element.useraddress+
					"</td></tr>";
			  		$("#main1").append(trstring);
				});
			},
			async:true,
			error:function(){}
		});
	});
	
	//测试ajax的get请求,带参数
	$("#but3").click(function(){
		//从文本框中得到请求参数
		var userid=$("#text1").val();
		var urlString="http://localhost:8080/JqueryAjax/findOne?userid="+userid;
		$.ajax({
			url:urlString,
			type:"GET",
			dataType:"json",
			success:function(resp,status){
				$("#main1").empty();
				$(resp).each(function(index,element){
					var trstring="<tr><td>"+element.userid+
			        "</td><td>"+element.username+
					"</td><td>"+element.userage+
					"</td><td>"+element.useraddress+
					"</td></tr>";
			  		$("#main1").append(trstring);
				});
			},
			async:true,
			error:function(){}
		});
	});
	
	
	//测试ajax的POST请求,不带参数
	$("#but4").click(function(){
		$.ajax({
			url:"http://localhost:8080/JqueryAjax/main",
			type:"POST",
			dataType:"json",
			success:function(resp,status){
				$("#main1").empty();
				$(resp).each(function(index,element){
					var trstring="<tr><td>"+element.userid+
			        "</td><td>"+element.username+
					"</td><td>"+element.userage+
					"</td><td>"+element.useraddress+
					"</td></tr>";
			  		$("#main1").append(trstring);
				});
			},
			async:true,
			error:function(){}
		});
	});
	
	//测试ajax的POST请求,带参数
	/*
	$("#but5").click(function(){
		//从文本框中得到请求参数
		var userid=$("#text1").val();
		var urlString="http://localhost:8080/JqueryAjax/findOne?userid="+userid;
		$.ajax({
			url:urlString,
			type:"POST",
			dataType:"json",
			success:function(resp,status){
				$("#main1").empty();
				$(resp).each(function(index,element){
					var trstring="<tr><td>"+element.userid+
			        "</td><td>"+element.username+
					"</td><td>"+element.userage+
					"</td><td>"+element.useraddress+
					"</td></tr>";
			  		$("#main1").append(trstring);
				});
			},
			async:true,
			error:function(){}
		});
	});
	*/
	
	//测试ajax的POST请求,带参数
	$("#but5").click(function(){
		//从文本框中得到请求参数
		var userid=$("#text1").val();
		$.ajax({
			url:"http://localhost:8080/JqueryAjax/findOne",
			type:"POST",
			data:{userid:userid},
			dataType:"json",
			success:function(resp,status){
				$("#main1").empty();
				$(resp).each(function(index,element){
					var trstring="<tr><td>"+element.userid+
			        "</td><td>"+element.username+
					"</td><td>"+element.userage+
					"</td><td>"+element.useraddress+
					"</td></tr>";
			  		$("#main1").append(trstring);
				});
			},
			async:true,
			error:function(){}
		});
	});
	
	
	//测试jquery的get方法
	$("#but6").click(function(){
		$.get("http://localhost:8080/JqueryAjax/main",
			  function(resp,status){
				$("#main2").empty();
				$(resp).each(function(index,element){
					var trstring="<tr><td>"+element.userid+
			        "</td><td>"+element.username+
					"</td><td>"+element.userage+
					"</td><td>"+element.useraddress+
					"</td></tr>";
			  		$("#main2").append(trstring);
				});
			  },
			  "json");
	});
	
	//测试jquery的post方法
	$("#but7").click(function(){
		$.post("http://localhost:8080/JqueryAjax/main",
			  function(resp,status){
				$("#main2").empty();
				$(resp).each(function(index,element){
					var trstring="<tr><td>"+element.userid+
			        "</td><td>"+element.username+
					"</td><td>"+element.userage+
					"</td><td>"+element.useraddress+
					"</td></tr>";
			  		$("#main2").append(trstring);
				});
			  },
			  "json");
	});
	
 });
</script>
</head>
<body>
	<center>
	<input id="but1" type="button" value="测试load"/>
	<div id="div1"></div>
	<hr>
	<input id="but2" type="button" value="测试ajax-get"/>
	<input id="but3" type="button" value="测试ajax-get带参数"/><br>
	<input id="text1" type="text" /><br>
	<input id="but4" type="button" value="测试ajax-post"/>
	<input id="but5" type="button" value="测试ajax-post带参数"/>
	<table id="main1" border="1px" width="500px"></table>
	<hr>
	<input id="but6" type="button" value="测试get"/>
	<input id="but7" type="button" value="测试post"/>
	<table id="main2" border="1px" width="500px"></table>
	</center>
</body>
</html>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值