用原生js寫php里的ajax,PHP和js

本文目錄一覽:

ajax請求原生怎麼寫

原生js實現Ajax方法:

var Ajax={

get: function(url, fn) { var obj = new XMLHttpRequest();

// XMLHttpRequest對象用於在後台與服務器交換數據

obj.open(‘GET’, url, true); obj.onreadystatechange = function() {

if (obj.readyState == 4 obj.status == 200 || obj.status == 304) {

// readyState == 4說明請求已完成

fn.call(this, obj.responseText);

//從服務器獲得數據

}

};

obj.send(); }, post: function (url, data, fn) {

// datat應為’a=a1b=b1’這種字符串格式,在jq里如果data為對象會自動將對象轉成這種字符串格式

var obj = new XMLHttpRequest(); obj.open(“POST”, url, true); obj.setRequestHeader(“Content-type”, “application/x-www-form-urlencoded”);

// 添加http頭,發送信息至服務器時內容編碼類型

obj.onreadystatechange = function() {

if (obj.readyState == 4 (obj.status == 200 || obj.status == 304)) {

// 304未修改

fn.call(this, obj.responseText);

}

};

obj.send(data);

}

}

注釋:

1. open(method, url, async) 方法需要三個參數:

method:發送請求所使用的方法(GET或POST);與POST相比,GET更簡單也更快,並且在大部分情況下都能用;然而,在以下情況中,請使用POST請求:

url:規定服務器端腳本的 URL(該文件可以是任何類型的文件,比如 .txt 和 .xml,或者服務器腳本文件,比如 .asp 和 .php (在傳迴響應之前,能夠在服務器上執行任務));

async:規定應當對請求進行異步(true)或同步(false)處理;true是在等待服務器響應時執行其他腳本,當響應就緒後對響應進行處理;false是等待服務器響應再執行。

2. send() 方法可將請求送往服務器。

3. onreadystatechange:存有處理服務器響應的函數,每當 readyState 改變時,onreadystatechange 函數就會被執行。

4. readyState:存有服務器響應的狀態信息。

5. responseText:獲得字符串形式的響應數據。

6. setRequestHeader():POST傳數據時,用來添加 HTTP 頭,然後send(data),注意data格式;GET發送信息時直接加參數到url上就可以,比如url?a=a1b=b1。

怎麼用原生js請求php的jsonp

AJAX的核心是XMLHttpRequest。

一個完整的AJAX請求一般包括以下步驟:

實例化XMLHttpRequest對象

連接服務器

發送請求

接收響應數據這些只是一些基本的 具體的可以去後盾裡面查詢

裡面有詳細的教學

怎麼用原生JS實現類似jQuery的ajax

建議你這樣試試看:

ajax函數:

function ajax(opt) {

opt = opt || {};

opt.method = opt.method.toUpperCase() || ‘POST’;

opt.url = opt.url || ”;

opt.async = opt.async || true;

opt.data = opt.data || null;

opt.success = opt.success || function () { };

var xmlHttp = null;

if (XMLHttpRequest) {

xmlHttp = new XMLHttpRequest();

}

else {

xmlHttp = new ActiveXObject(‘Microsoft.XMLHTTP’);

} var params = [];

for (var key in opt.data) {

params.push(key + ‘=’ + opt.data[key]);

}

var postData = params.join(”);

if (opt.method.toUpperCase() === ‘POST’) {

xmlHttp.open(opt.method, opt.url, opt.async);

xmlHttp.setRequestHeader(‘Content-Type’, ‘application/x-www-form-urlencoded;charset=utf-8’);

xmlHttp.send(postData);

}

else if (opt.method.toUpperCase() === ‘GET’) {

xmlHttp.open(opt.method, opt.url + ‘?’ + postData, opt.async);

xmlHttp.send(null);

}

xmlHttp.onreadystatechange = function () {

if (xmlHttp.readyState == 4 xmlHttp.status == 200) {

opt.success(xmlHttp.responseText);

}

};

}

2.參數說明(清渭技術–):

3.使用示例:

ajax({

method: ‘POST’,

url: ‘post.php’,

data: {

param1: ‘value1’,

param2: ‘value2’,

},

success: function (response) {

console.log(response) ;

}

})

PS:希望本文對你有所幫助~qingwei.tech

我想用AJAX實現在js里調用PHP里的函數,不知道怎麼寫啊,沒學過Ajax

AJAX其實就是HTTP的GET、POST去調用一個獨立的服務器上的PHP文件,不能是調用某個文件的函數。

原創文章,作者:GQJLA,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/330687.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
GQJLA的頭像GQJLA
上一篇 2025-01-16 15:46
下一篇 2025-01-16 15:46

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的解決方法

    本文將解決Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的問題。同時,給出一些相關示例代碼,以幫助讀者更好的理解並處理這個問題。 一、問題解…

    編程 2025-04-29
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • JS圖片沿着SVG路徑移動實現方法

    本文將為大家詳細介紹如何使用JS實現圖片沿着SVG路徑移動的效果,包括路徑製作、路徑效果、以及實現代碼等內容。 一、路徑製作 路徑的製作,我們需要使用到SVG,SVG是可縮放矢量圖…

    編程 2025-04-27
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • 如何使用JS調用Python腳本

    本文將詳細介紹通過JS調用Python腳本的方法,包括使用Node.js、Python shell、child_process等三種方法,以及在Web應用中的應用。 一、使用Nod…

    編程 2025-04-27

發表回復

登錄後才能評論