ホームページ ウェブフロントエンド jsチュートリアル jQuery の ajax technology_jquery の詳細な紹介

jQuery の ajax technology_jquery の詳細な紹介

May 16, 2016 pm 05:32 PM
ajax jquery

1:Ajax技术包含以下几点:
基于Web标准(XHTML + CSS)的展示
使用DOM进行动态显示和交互
使用XMLHttpRequest进行数据交换和相关操作
使用javascript将所有内容绑定在一起
Ajax的核心是JavaScript的XMLHttpRequest对象,它是一种支持异步请求的技术。简而言之,使用JS可以控制XMLHttpRequest对象向服务器提出请求并处理响应,
而不影响用户对页面的正常访问。对于XMLHttpRequest对象,不同的浏览器提供了不同的支持,IE是将其作为ActiveX控件集成到浏览器中的,而其他主流的浏览器直接
作为一般的JS对象来创建。

2:JS中的Ajax

XMLHttpRequest对象的属性及简要说明

名称

说明

readyState

通信的状态,当XMLHttpRequest对象把一个HTTP请求发送到服务器,到接收到服务器响应信息,整个过程将经历5种状态,该属性取值为为0-4

onreadystatechange

设置回调事件处理程序,当readyState属性的值改变时,会激发此事件

responseText

服务器返回的text/html格式的文档

responseXML

服务器返回的text/xml格式的文档

status

描述了HTTP响应short类型的状态代码,100表示Continue, 101表示Switching protocols数据交换,200表示执行正常,404表示未找到页面,500表示内部程序错误

statusText

HTTP响应的状态代码对应的文本(OK, not found)


readyState属性代码

代码

说明

0

代表未初始化的状态。创建了一个XMLHttpRequest对象,尚未初始化

1

代表连接状态,已经调用了open方法,并且已经准备好发送请求

2

代表发送状态,已经调用了send方法发出请求,尚未得到响应结果

3

代表正在接收状态,已经接收了HTTP响应的头部信息,正在接收响应内容

4

代表已加载状态,此时响应内容已完全被接收


复制代代码如下:





< title>Ajax








< ;/body>


ajax.js の内容:
复制代 代码如下:

var xmlRequest;
function CreateRequest()
{
/* 创建XMLHttpRequest对象 */
if( window.ActiveXObject)
{
return new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
return new XMLHttpRequest();
}
}
function ResponseHandler()
{
if(xmlRequest.readyState == 4 && xmlRequest.status == 200)
{
/* 如果通信成功,また、正常に、以下の操作を実行します */

var reqContent = xmlRequest.responseText;
document.getElementById("browser").innerHTML = reqContent;
document.getElementById("content")。 value = reqContent;
}
}
function AjaxAccess()
{
/* 异步请求百度首页 */

xmlRequest = CreateRequest();  //XMLHttpRequest对オブジェクト
xmlRequest.onreadystatechange = ResponseHandler;  //设置回调関数
xmlRequest.open("GET","http://www.baidu.com");  //初化请要求对象
xmlRequest.send(null);   //送信请求信息

/* 触発イベント後の提案正在打开百度首页 */
var brow = document.getElementById("browser");
brow.innerHTML = "

;正在打开百度搜索

";
}
window.onload = function()
{
document.getElementById("Access").onclick = AjaxAccess;  //設置按扭单击イベント
}


3:jQuery 中の Ajax
$.ajax(options) ) メソッド
オプションは、「鍵/値」対の形式で設定され、要求方式、要求URL、戻り関数などの Ajax 要求のパラメータを設定するために使用されます。
常用プロパティ例:
url:
送信要求の地址
type:送信要求方式、GET および POST、默认は GET
timeout: 設定要求時間、このプロパティは数値型、単位は秒です
data: サーバーに送信されるデータ、「键/值」形式、このプロパティはオブジェクトまたは文字列である場合があります。これはオブジェクトであり、自動変換は文字列
dataType: 予定サーバーから返されるデータ型であり、このプロパティは文字列型です。的标签(script标签または者スタイル标签) 会
文本插入DOMの時候行行、 script:返纯文本JS代码、json、jsonp、text
contentType: 送信メッセージ至サービス器時コンテンツコード型、このプロパティは文字列型、許可は "application/x-www-form-urlencoded"、一般に不使用の設定、ため、ほとんどのアプリケーションと一致
beforeSend: 要求送信されたイベント、そのプロパティは、イベント処理プログラムを設定し、前に修正XMLHttpRequestのパラメータ(例えば、ブロック情報)を送信するために使用され得る。
代码如下:

function(XMLHttpRequest) {
this; /*このキーワードは、.ajax() メソッドのオプション パラメーター オブジェクトにアクセスするために使用されます*/
}
complete: リクエストが完了した後のイベント、リクエストが成功したかどうかに関係なく、このイベントがトリガーされます。
function(XMLHttpRequet, textStatus) {
this; /*このキーワードは .ajax() メソッドのオプション パラメーター オブジェクトにアクセスするために使用されます*/
}
textStatus パラメーターは実行ステータスを返します現在のリクエストの内容 (成功やエラーなど)
success: リクエストが正常に実行されたときのイベント。
function(data, textStatus) {
this; /*このキーワードは、.ajax() メソッドのオプション パラメーター オブジェクトにアクセスするために使用されます*/
}
error: リクエストの実行が失敗した場合のイベント
function(XMLHttpRequest, textStatus, errorThrown) {
this; /*このキーワードは、.ajax() メソッドのオプション パラメーター オブジェクトにアクセスするために使用されます*/
}
global: グローバル Ajax イベントをトリガーするかどうか。この属性はブール型で、デフォルト値は false

コードをコピー コードは次のとおりです:

$(document).ready(function(){
$("#Access").click (function(){
var xmlReq = $.ajax({
type:'GET',
url:'http://www.sougou.com',
success:function(reqContent )
$("#browser").html(reqContent);
$("#content").text(reqContent);
}});
$("#browser") .html("< ;h1>総合検索を開く");
});
});


4: ロードメソッド
load(url, [data], [callback]);

コードをコピー コードは次のとおりです次のように:




Load


< style type="text/ css">
body {padding:20px; }
#commentList{ border:solid 2px #888; overflow:auto; -bottom:solid 1px; margin-bottom:30px; font-size:13px; }
#commentList div{ }
#commentList h3{ color:# 888; パディング:10px 0 0 0; }




返信リスト

🎜>


< /html>



Load.js


コードをコピー コードは次のとおりです: $(document).ready(function(){
$("#refresh").click(function(){
/*アクセスするページの URL を実際の状況に応じて変更します*/
var url = "http://www.sogou.com";
$("#commentList") .load(url); // 対応するコンテンツをロードします
} )
});



5: $.get() メソッド
は GET メソッドを使用するグローバル メソッドです。 非同期リクエストを行う場合の構文形式は次のとおりです。

コードをコピーします コードは次のとおりです:

var xmlReq = $.get(url, [データ], [コールバック], [タイプ]);
$.get("www.baidu.com",
{
user: 'zhangsan'
}
);
callback: function(data, textStatus) {}

复制代コード 代码如下:





Get






<表id="peoples" cellpacing="1">
<頭>
名前年齢性別< /td>







getJSON.js
コードをコピー コードは次のとおりです
$(document).ready(function(){
/* 非同期リクエスト、JSON データをロード*/ /PeopleList.aspx",
function(data){
/* リクエスト結果をトラバースします*/
$.each(data,
function(index, p){
var html = " " p.name "< ;/td>" ページ
"" (p.is Male ? "男性" : " 女性") " "
$("#peoples>tbody").append(html);
});
});
}) ;


PeopleList .aspx

<%@ページ言語 = "C#" %>
[{
"名前" : "デビッド リー",
"年齢" : 61,
" is Male" : true
},{
"名前" : "マイケル クリントン",
"年齢" : 53,
"男性" : true
},{
"名前 " : "ブルック アン",
"年齢" : 23,
"is男性" : false
},{
"名前" : "メアリー ジョンソン",
"年齢" : 35 ,
"is男性" : false
},{
"名前" : "エリザベス ジョーンズ",
"年齢" : 33,
"is Male" : false
},{
"名前" : "ジェームズ スミス" 、
"年齢" : 25、
"is Male" : true
}]


8:$.getScript() メソッド
var xmlReq = $.getScript(url, [callback]);
复制代码 代码如下:





getScript





getScript() メソッドを使用するメソッド异步追加JavaScript 文件


< input type="button" value="Button" id="input" />



getScript.js
复制代码代码如下:

$(document).ready(function( ){
$("#input").click(function(){
$.getScript("Test.js", function(data){
showMsg();
});
});
});

Test.js
复制代码代次如下:

function showMsg(){
alert("This is Message"); 
}

9:配列化表单データベース
jQuery は决パラメータ很多の问题を提供し、配列化の方法简化对を提供します
代打代打次のように:





serialize








< tr>






年齢:
性別:
メールアドレス:
詳細:<テキストエリア名="詳細">
<ボタン名="btnSubmit">送信< ;/button>


< ;/html>

serialize.js
复制代码代码如下:

$(document).ready(function(){
$("button[name='btnSubmit']").click(function(){
$.post("http: //localhost:2154/Web/Register.aspx",
$("form").serialize(), //フォーム データをシリアル化します
function(data){
$("table tbody" ) .append("" データ "");
});
});
}); 🎜>

Register.aspx
コードをコピー コードは次のとおりです:
<%@ Page Language="C#" %>
ユーザー名:<%= Request["username"] %>


年齢:<%= Request["age"] %>


男性:


メール:<%= リクエスト["メール"]%>


詳細:


10:serializeArray() メソッド
このメソッドは、ページ フォームを「キー」のコレクションの形式である JSON 構造化オブジェクトにシリアル化します。 /value" ペア フォーム内のすべての要素値をカプセル化します。
このメソッドは JSON 文字列ではなく JSON オブジェクトを返すことに注意してください
JSON オブジェクトの構造は次のとおりです:

コードをコピー コードは次のとおりです。
" , "value2"},
);
var textName = jsonData[ 0].名前;
var textValue = jsonData[0].value;




11: グローバル Ajax デフォルト オプションを設定します

アプリケーションでは、多数のAjax メソッドはさまざまな関数を実装するために作成されることがよくありますが、そのたびに $.ajax() メソッドに多数のパラメータが設定されるのですが、これは非常に不便です。jQuery では、 を設定できます。グローバルな Ajax デフォルトパラメータ項目。 $.ajaxSetup([options]);


コードをコピー
コードは次のとおりです: $.ajaxSetup({ url: 'Test.html', type: 'POST',
global: false, //グローバル イベントのトリガーを無効にする
dataType: 'json' 、
エラー: function(xhr, textStatus, errorThrown) {
🎜>

ajaxComplete(callback) //このイベントはリクエストが完了するとトリガーされます
ajaxError(callback); ; //このイベントはリクエストでエラーが発生したときにトリガーされます
ajaxSend(callback); //このイベントはリクエストが送信される前にトリガーされます
ajaxStart(callback); //このイベントはリクエストが送信されたときにトリガーされますstarting
ajaxStop(callback); //このイベントはリクエストが終了するとトリガーされます
ajaxSuccess(callback) //リクエストが成功したときにトリガーされます
ajaxStart() メソッドと ajaxStop メソッドのイベント ハンドラーはパラメータのない関数で、残りは 3 つのパラメータを持つことができます。 構文形式は次のとおりです。


コードをコピーします。
コードは次のとおりです。

関数 (イベント、XHR、SETTINGS) {
EVENT はトリガーされたイベント オブジェクトです
XHR は XMLHTTPRequest オブジェクト
設定は Ajax リクエスト構成パラメーターです





AjaxGlobalEvent






<ボタン名= "btnLoad">Load



AjaxGlobalEvent.js
复制代代码如下:

$(document).ready(function(){
$("# show").ajaxStart(function(){
$(this).append("

ajaxStart を実行

");
});
$("#show") .ajaxStop(function(){
$(this).append("

ajaxStop を実行

");
});

$("#show") .ajaxComplete(function(){
$(this).append("

ajaxComplete を実行

");
});

$("#show") .ajaxError(function(){
$(this).append("

ajaxError を実行

");
});

$("#show") .ajaxSend(function(){
$(this).append("

ajaxSend を実行

");
});

$("#show") .ajaxSuccess(function(){
$(this).append("

ajaxSuccess を実行

");
});
$("button[name='btnLoad' ]").click(function(){
$.get("http://www.sohu.com");
});
});



このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? Feb 28, 2024 pm 03:12 PM

jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? jQuery で PUT リクエストを送信する方法は、他のタイプのリクエストを送信する方法と似ていますが、いくつかの詳細とパラメータ設定に注意する必要があります。 PUT リクエストは通常​​、データベース内のデータの更新やサーバー上のファイルの更新など、リソースを更新するために使用されます。以下は、jQuery の PUT リクエスト メソッドを使用した具体的なコード例です。まず、jQuery ライブラリ ファイルが含まれていることを確認してから、$.ajax({u

Ajaxを使用してPHPメソッドから変数を取得するにはどうすればよいですか? Ajaxを使用してPHPメソッドから変数を取得するにはどうすればよいですか? Mar 09, 2024 pm 05:36 PM

Ajax を使用して PHP メソッドから変数を取得することは、Web 開発では一般的なシナリオであり、Ajax を使用すると、データを更新せずにページを動的に取得できます。この記事では、Ajax を使用して PHP メソッドから変数を取得する方法と、具体的なコード例を紹介します。まず、Ajax リクエストを処理し、必要な変数を返すための PHP ファイルを作成する必要があります。以下は、単純な PHP ファイル getData.php のサンプル コードです。

jQuery のヒント: ページ上のすべての a タグのテキストをすばやく変更する jQuery のヒント: ページ上のすべての a タグのテキストをすばやく変更する Feb 28, 2024 pm 09:06 PM

タイトル: jQuery ヒント: ページ上のすべての a タグのテキストをすばやく変更する Web 開発では、ページ上の要素を変更したり操作したりする必要がよくあります。 jQuery を使用する場合、ページ内のすべての a タグのテキスト コンテンツを一度に変更する必要がある場合があります。これにより、時間と労力を節約できます。以下では、jQuery を使用してページ上のすべての a タグのテキストをすばやく変更する方法と、具体的なコード例を紹介します。まず、jQuery ライブラリ ファイルを導入し、次のコードがページに導入されていることを確認する必要があります: &lt

jQuery を使用してすべての a タグのテキスト コンテンツを変更する jQuery を使用してすべての a タグのテキスト コンテンツを変更する Feb 28, 2024 pm 05:42 PM

タイトル: jQuery を使用して、すべての a タグのテキスト コンテンツを変更します。 jQuery は、DOM 操作を処理するために広く使用されている人気のある JavaScript ライブラリです。 Web 開発では、ページ上のリンク タグ (タグ) のテキスト コンテンツを変更する必要が生じることがよくあります。この記事では、この目標を達成するために jQuery を使用する方法を説明し、具体的なコード例を示します。まず、jQuery ライブラリをページに導入する必要があります。 HTML ファイルに次のコードを追加します。

PHP と Ajax: オートコンプリート提案エンジンの構築 PHP と Ajax: オートコンプリート提案エンジンの構築 Jun 02, 2024 pm 08:39 PM

PHP と Ajax を使用してオートコンプリート候補エンジンを構築します。 サーバー側スクリプト: Ajax リクエストを処理し、候補を返します (autocomplete.php)。クライアント スクリプト: Ajax リクエストを送信し、提案を表示します (autocomplete.js)。実際のケース: HTML ページにスクリプトを組み込み、検索入力要素の識別子を指定します。

PHP と Ajax: 動的に読み込まれるコンテンツを作成するためのソリューション PHP と Ajax: 動的に読み込まれるコンテンツを作成するためのソリューション Jun 06, 2024 pm 01:12 PM

Ajax (非同期 JavaScript および XML) を使用すると、ページをリロードせずに動的コンテンツを追加できます。 PHP と Ajax を使用すると、製品リストを動的にロードできます。HTML はコンテナ要素を含むページを作成し、Ajax リクエストはロード後に要素にデータを追加します。 JavaScript は Ajax を使用して XMLHttpRequest を通じてサーバーにリクエストを送信し、サーバーから JSON 形式で商品データを取得します。 PHP は MySQL を使用してデータベースから製品データをクエリし、それを JSON 形式にエンコードします。 JavaScript は JSON データを解析し、ページ コンテナーに表示します。ボタンをクリックすると、製品リストをロードするための Ajax リクエストがトリガーされます。

jQuery 要素に特定の属性があるかどうかを確認するにはどうすればよいですか? jQuery 要素に特定の属性があるかどうかを確認するにはどうすればよいですか? Feb 29, 2024 am 09:03 AM

jQuery 要素に特定の属性があるかどうかを確認するにはどうすればよいですか? jQuery を使用して DOM 要素を操作する場合、要素に特定の属性があるかどうかを判断する必要がある状況がよく発生します。この場合、jQuery が提供するメソッドを使用してこの関数を簡単に実装できます。以下では、jQuery 要素が特定の属性を持つかどうかを判断するために一般的に使用される 2 つの方法を紹介し、具体的なコード例を添付します。方法 1: attr() メソッドと typeof 演算子 // を使用して、要素に特定の属性があるかどうかを判断します

jQuery における eq の役割と応用シナリオを理解する jQuery における eq の役割と応用シナリオを理解する Feb 28, 2024 pm 01:15 PM

jQuery は、Web ページでの DOM 操作やイベント処理を処理するために広く使用されている人気のある JavaScript ライブラリです。 jQueryではeq()メソッドを利用して指定したインデックス位置の要素を選択しますが、具体的な使い方と応用シーンは以下の通りです。 jQuery では、 eq() メソッドは、指定されたインデックス位置にある要素を選択します。インデックス位置は 0 からカウントされます。つまり、最初の要素のインデックスは 0、2 番目の要素のインデックスは 1 などとなります。 eq() メソッドの構文は次のとおりです。 $("s

See all articles