異步請求
不使用異步請求的時候,請求數據都是整個頁面全部刷新一次,這樣每次請求都會重新請求所有的資源.
很多時候不需要頁面全部刷新, 只需要頁面的局部數據刷新即可, 此時就需要發送異步請求來實現局部數據刷新的請求
異步請求簡稱 Ajax (Asynchronous Javascript And XML) 以前 js 發送異步請求數據, 一般是xml, 現在是json了
Demo: 使用JQ發送 異步請求
方式一
html:
<a href="javascript:void(0)">獲取一個雇員信息</a>
jq:
1 $(function(){ 2 $("a").click(function(){ //為超鏈接綁定事件,幾點之后會發送請求 3 $.get( //發送一個 get 請求 4 "emp/getOne", //請求的地址 5 {"id":7499}, //傳遞服務端數據 6 function(data){ //回調函數, 當請求成功之后, 會自動調用函數, date 是服務器返回給客戶端的數據 7 alert("服務器端返回的數據是: " + data); 8 }, 9 "json") 10 }) 11 })
方式二:
$(function(){ $("a").click(function(){ //為超鏈接綁定事件,幾點之后會發送請求 $.getJSON( //發送一個 get 請求, 但只接受json 格式的響應數據 "emp/getOne", //請求的地址 {"id":7499}, //傳遞服務端數據 function(data){ //回調函數, 當請求成功之后, 會自動調用函數, date 是服務器返回給客戶端的數據 alert("服務器端返回的數據是: " + data); } ) }) })
方式三:
$(function(){ $("a").click(function(){ //為超鏈接綁定事件,幾點之后會發送請求 $.post( //發送一個 post 請求 "emp/getOne", //請求的地址 {"id":7499}, //傳遞服務端數據 function(data){ //回調函數, 當請求成功之后調用 alert("服務器端返回的數據是: " + data); }, "json"); //請求 json 格式的數據 }) })
方式四:
$(function(){ $("a").click(function(){ //為超鏈接綁定事件,幾點之后會發送請求 $.ajax({ //發送一個請求 type:"post", //指定請求類型 url:"emp/getOne", //請求地址 data:"id=7788", //傳遞的數據 dataType:"json", //指定接收的數據類型 async:false, //鎖定瀏覽器,只有請求處理完畢之后(回調函數調用完之后)才能執行后面的代碼 success:function(data){ //回調函數 alert("服務器端返回的數據是: " + data); } //其他代碼 }) }) })