jQuery AJAX 是一种在 Web 开发中常用的技术,其可以脱离页面刷新,向服务器发起异步请求,并在请求返回后更新页面内容。下面我来给您详细讲解 jQuery AJAX 的完整攻略。
什么是 jQuery AJAX
jQuery AJAX 即使用 jQuery 对 AJAX 的封装实现。AJAX 是 Asynchronous JavaScript and XML 的缩写,指利用 JavaScript 和 XML 技术在不刷新页面的情况下,与服务器端进行异步数据交互。
开始使用 jQuery AJAX
在使用 jQuery AJAX 之前,需要先引入 jQuery 库。可以通过以下方式引入:
<script src="https://cdn.bootcss.com/jquery/3.5.1/jquery.min.js"></script>
jQuery AJAX 的基本语法
以下是 jQuery AJAX 的基本语法,用于向服务器发送请求:
$.ajax({
url: '', // 请求URL
type: '', // 请求方式
data: {}, // 发送给服务器的数据
dataType: '', // 返回的数据类型
success: function() {}, // 请求成功的回调函数
error: function() {} // 请求失败的回调函数
});
这里的各个参数含义如下:
- url:请求的 URL。
- type:请求的方式,可以为 GET 或 POST。
- data:向服务器发送的数据,可以为键值对或字符串。
- dataType:返回的类型,可以为 text、html、json、jsonp 等。
- success:请求成功后的回调函数。
- error:请求失败后的回调函数。
jQuery AJAX 的请求方式
jQuery AJAX 可以使用 GET 或 POST 请求方式,GET 方式如下:
$.ajax({
url: 'example.php', // 请求URL
type: 'GET', // 请求方式
dataType: 'text', // 返回的数据类型
success: function(response) {
// 请求成功的回调函数
console.log(response);
},
error: function() {
// 请求失败的回调函数
console.log('请求失败');
}
});
POST 方式如下:
$.ajax({
url: 'example.php', // 请求URL
type: 'POST', // 请求方式
dataType: 'text', // 返回的数据类型
data: {name: 'tom', age: 25}, // 发送给服务器的数据
success: function(response) {
// 请求成功的回调函数
console.log(response);
},
error: function() {
// 请求失败的回调函数
console.log('请求失败');
}
});
jQuery AJAX 的返回类型
下面是 jQuery AJAX 中常用的返回类型:
- text:返回纯文本数据。
- html:返回 HTML 代码。
- json:返回 JSON 格式的数据。
- jsonp:(跨域访问)返回 JSONP 格式的数据。
$.ajax({
url: 'example.php', // 请求URL
type: 'GET', // 请求方式
dataType: 'json', // 返回的数据类型
success: function(result) {
// 请求成功的回调函数
console.log(result.name);
console.log(result.age);
},
error: function() {
// 请求失败的回调函数
console.log('请求失败');
}
});
jQuery AJAX 的两个完整示例
下面是两个完整的 jQuery AJAX 示例:
- 使用 GET 请求方式向服务器请求数据,并在页面上显示。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>AJAX GET 请求示例</title>
<script src="https://cdn.bootcss.com/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('#btn').click(function(){
$.ajax({
url: 'data.json',
type: 'GET',
dataType: 'json',
success: function(data){
var html = '';
$.each(data, function(key, value){
html += '<li>'+value.name+' - '+value.age+'</li>';
});
$('#result').html(html);
},
error: function(){
alert('请求失败');
}
});
});
});
</script>
</head>
<body>
<button id="btn">请求数据</button>
<ul id="result"></ul>
</body>
</html>
这个示例中,点击按钮后会向服务器发送一个 GET 请求,请求类型为 json,返回 JSON 格式的数据,并将返回的数据解析后显示在页面上。
- 使用 POST 请求方式向服务器发送数据,并在页面上显示返回的信息。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>AJAX POST 请求示例</title>
<script src="https://cdn.bootcss.com/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('#btn').click(function(){
var name = $('#name').val();
var age = $('#age').val();
$.ajax({
url: 'post.php',
type: 'POST',
dataType: 'text',
data: {name: name, age: age},
success: function(data){
$('#result').html(data);
},
error: function(){
alert('请求失败');
}
});
});
});
</script>
</head>
<body>
<input type="text" id="name" placeholder="姓名"><br>
<input type="text" id="age" placeholder="年龄"><br>
<button id="btn">提交</button>
<div id="result"></div>
</body>
</html>
这个示例中,输入姓名和年龄后,点击提交按钮会向服务器发送一个 POST 请求,并将输入的数据发送给服务器。服务器接受到数据后会进行处理,并将处理的结果返回给客户端,客户端接受到返回的数据后将数据显示在页面上。
以上就是 jQuery AJAX 的完整攻略了。