3.$.getScript()和$.getJSON()
方法
jQuery 提供了一组用于特定异步加载的方法:
$.getScript()
用于加载特定的 JS 文件;
$.getJSON()
用于专门加载 JSON 文件。
有时我们希望能够在特定的情况再加载 JS 文件,而不是一开始把所有 JS 文件都加载了,
这时可以使用$.getScript()方法。
$(selector).getScript(url,success(response,status))
- url 必需。规定将请求发送到哪个 URL。
- success(response,status) 可选。规定当请求成功时运行的函数。
- 额外的参数:
- response: 包含来自请求的结果数据
- status: 包含请求的状态("success"、"notmodified"、"error"、"timeout"、"parsererror")
//点击按钮后再加载 JS 文件
$('input').click(function () {
$.getScript('test.js');
});
$(selector).getJSON(url,data,success(data,status,xhr))
- url 必需。规定将请求发送到哪个 URL。
- data 可选。规定发送到服务器的数据success(data,status,xhr)可选。规定当请求成功时运行的函数。
- 参数:
- data: 包含从服务器返回的数据
- status: 包含请求的状态("success"、"notmodified"、"error"、"timeout"、"parsererror")
- xhr: 包含 XMLHttpRequest 对象 `
$.getJSON()方法是专门用于加载 JSON 文件的,使用方法和之前的类似。
$('input').click(function () {
$.getJSON('test.json', function (response, status, xhr) {
alert(response[0].url);
});
});
4、$.ajax()
$.ajax()
是所有 ajax 方法中最底层的方法,所有其他方法都是基于$.ajax()
方法的封装。
这个方法只有一个参数,传递一个各个功能键值对的对象。
$.ajax({name:value, name:value, ... })
//$.ajax 使用
$('input').click(function () {
$.ajax({
type : 'POST', //这里可以换成 GETurl : 'test.php',
data : {
url : 'ycku'
},
success : function (response, stutas, xhr) {
$('#box').html(response);
}
});
});
注意:对于 data属性,如果是 GET 模式,可以使用三种之前说所的三种形式。如果是
POST 模式可以使用之前的两种形式。