[PHP][AJAX]介紹

小黑
發佈於後端
閱讀時間約 3 分鐘

AJAX(Asynchronous JavaScript And XML)為JavaScript和XML的非同步技術,可以讓瀏覽器建立快速、更加和容易使用的操作介面。AJAX核心技術是非同步的HTTP請求(Asynchronous HTTP Requests),除了第一次載入網頁外,HTTP請求是在背景使用XMLHttpRequest物件送出,送出後不要等待回應,所以不會影響使用者的操作。

jQuery

jQuery可以幫助我們建立跨瀏覽器相容的AJAX應用程式。jQuery提供多種方法來提出XMLHttpRequest請求,不需要自行判斷瀏覽器來建立XMLHttpRequest。相關方法說明如下:

  • load():將伺服端的遠端文件用AJAX請求來載入。
  • getScript():用AJAX請求執行伺服端JavaScript檔案。
  • get():用HTTP GET方法送出AJAX請求和取得回應。
  • post():用HTTP POST方法送出AJAX請求和取得回應。
  • getJSON():用HTTP GET方法送出AJAX請求來取得伺服器的JSON資料。
  • ajax():用XMLHttpRequest送出AJAX請求。


ajax()方法

$.ajax({
type: 'GET',
url: 'getDateTime.php',
data: { name : nameVal,
type : typeVal },
success: function(data) {
// 處理回傳的資料
}
});


常用參數屬性:

  • type:HTTP請求方式是GET或POST。
  • url:目標網址。
  • data:要傳送的資料。
  • success:請求成功時,會執行此函數。
  • error:請求失敗時,會執行此函數。
  • complete:請求完成時,會執行此函數,也就是說不論成功或失敗都會執行。
  • beforeSend:送出請求前,會執行此函數。


getJSON()方法

$.getJSON('getTitleJSON.php', function(data){
//處理JSON資料});​

getJSON()第一個參數為網址,第二個參數為回調函數。


處理JSON資料

$("#result").empty();//清除HTML清單result
$.each(data, function (key, val) {//取出鍵和值
var str = '<li id="' + key + '">' +
val.Id + ':' + val.Title + '</li>';
$("#result").append(str);//新增資料
});




7會員
112內容數
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
發表第一個留言支持創作者!
小黑與程式的邂逅 的其他內容
[PHP]檔案操作函數
閱讀時間約 2 分鐘
[PHP]檔案讀寫
閱讀時間約 5 分鐘
[PHP][Cookie]建立購物車
閱讀時間約 2 分鐘
[PHP]上傳檔案
閱讀時間約 1 分鐘
[PHP]留言功能
閱讀時間約 6 分鐘
[PHP][Laravel]建立專案
閱讀時間約 3 分鐘
你可能也想看
PHP 判斷式的效能 程式如下: 跑了五次,每次判斷一千萬回 f1() 陣列的方式: 5.2219750881195 5.194901943
Thumbnail
avatar
WILSON PENG
2022-09-22
PHP 時區的問題這支 PHP 的小程式,輸入時間,會顯示回傳的時間: 放在 command line 執行,如下: $ php cst.php “2018–04–01 00:00:00 cst” 多了 14 小時,好神奇。 追 PHP Source 好了,看問題在哪。找到這支定義時區的設定: timezonemap
Thumbnail
avatar
WILSON PENG
2022-09-22
PHP 生日西元年轉民國年 E 本筆記參考: 1. https://hivenson.pixnet.net/blog/post/191702742
avatar
Vic Lin
2021-11-17
PHP calculate days in year/month取得2021年11月共有幾天: $total_days = cal_days_in_month(CAL_GREGORIAN, 11, 2021);   // $total_days=30 本筆記參考: 1. https://www.codegrepper.com/code-examples/php
avatar
Vic Lin
2021-11-09
PHP sort two-dimensional array by column  // $data is a two-dimensional array array_multisort(array_column($data, 'column_name'), SORT_ASC, $data); array_multisort(array_column($data, 'colum
avatar
Vic Lin
2021-10-26
PHP 四捨五入保留N位小數與補0四捨五入到小數點後第二位,並自動補0到小數點後第二位: sprintf("%.2f", round($num,2)) 本筆記參考: 1. https://www.cnblogs.com/ryanzheng/p/12292852.html
Thumbnail
avatar
Vic Lin
2021-10-04
PHP get client real ip behind CloudflareLaravel 透過request()->ip拿到的ip不是client real ip,原來是因為前面有一層cloudflare,解決方法如下,改用下面這段script來取ip: E 可以包成helper function方便使用。 值得一提的是,HTTP_CF_CONNECTING_IP有可能
avatar
Vic Lin
2021-10-04
PHP Null Coalesce Assignment Operator在PHP 7 版本之前,?: 這種寫法稱為,「Ternary Operator」: $data = isset($data) ? $data : 'hello'; PHP 7 之後,??這種寫法稱為「Null Coalescing Operator」: $data = $data ?? 'hell
avatar
Vic Lin
2021-08-12
PHP環境的安裝與設定A. 安裝APPSERV 至官網下載https://www.appserv.org/en/ 最新版本APPSERV8.6.0並直接安裝: 安裝完包含預設五個資料夾: 請於【www】內加入網頁內容,預設首頁index.php。 於瀏覽器網址輸入【localhost】即可檢視到預設的首頁: B.
Thumbnail
avatar
哩老師
2020-05-11
jQuery ajax & php examplejQuery ajax & php example 第一種方式 使用application/x-www-form-urlencoded 第二種方式 使用application/json
Thumbnail
avatar
Vic Lin
2019-10-13