jQueryのAJAXの知識まとめ

Mar 24, 2018 pm 02:23 PM
ajax jquery 知識のポイント

今回は編集者が皆さんのために jQuery における AJAX の知識ポイントをまとめました。以下にその知識ポイントをまとめましたので見てみましょう。

1. AJAXの概念
Asynchronous Javascript And XML (非同期JavaScriptとXML)
AJAXは言語ではなく、インタラクティブなWebアプリケーションを作成するためのWeb開発テクノロジーです
AJAXはJavaScript、XHTML、CSS、およびDOMです。 XML の組み合わせ。 4. 動的表示と対話のために JavaScript を使用してドキュメント オブジェクト モデル (ネットワーク ドキュメント オブジェクト モデル) を操作します。
JavaScript を使用してすべてのデータをバインドし、処理します。
XML とは、拡張マークアップ言語 (Extensible Markup Language) を指します。 EXtensible Markup Language)
XML XML は HTML によく似たマークアップ言語であり、データを表示するために設計されており、XML タグは事前に定義されていません。ラベルは自分で定義する必要があります。
XML は自己記述的になるように設計されています。
XML は W3C によって推奨される標準です
XSLT とは何ですか?
XSLTはXSL変換[1]を指します
XSLTはXSLの最も重要な部分です
XSLTはある種類のXMLドキュメントを別の種類のXMLドキュメントに変換できます
XSLTはW3C標準を使用します


AJAXのコアオブジェクトはXMLHttpRequest




II. AJAX 動作原理


ユーザー操作プロセス:
ユーザーブラウザ -> JavaScript が XmlHttpRequest オブジェクトをインスタンス化 -> AJAX エンジン -> http リクエスト - >Web サーバー -> バックエンドビジネスシステム
システムリターンプロセス:
バックエンドビジネスシステム->バックエンドサーバー->Webサーバー->HTML、XML、JSONデータ->AJAXエンジン->HTML+CSS(ウェルブラウザ)->ユーザーブラウザ
3. AJAX の長所と短所:


AJAX 非同期処理の利点:
サーバーの負担を軽減、AJAX は通常、サーバーから必要なデータのみを取得します
ページの更新が不要、ユーザーの待ち時間を短縮します
より良い顧客エクスペリエンス、一部のサーバー作業をクライアントに転送して完了し、ネットワーク リソースを節約し、ユーザー エクスペリエンスを向上させることができます プラットフォームの制限がありません 表示とデータの分離を促進します AJAX 非同期処理の欠点 : ページ内に大量の JS があり、検索エンジンに困難をもたらす
AJAXは戻る機能と履歴機能を無効にする、つまりブラウザのメカニズムを損傷する
クロスドメインの問題がある
utf-8でエンコードされたデータのみ送受信できる




1.AJAXの実装step




window.open(URL,name,features,replace)
URL:新しいウィンドウに表示されるドキュメントの URL を宣言するオプションの文字列。このパラメータが省略されている場合 またはその値が空の文字列の場合、新しいウィンドウにドキュメントは表示されません
name:
数字、文字、アンダースコアを含む機能のカンマ区切りリストであるオプションの文字列、
この文字新しいウィンドウの名前を宣言します。この名前は、タグ および

の target 属性の値として使用できます。
このパラメータで既存のウィンドウを指定すると、open() メソッドは新しいウィンドウを作成せず、指定されたウィンドウへの参照を返すだけになります。この場合、機能は無視されます features: 新しいウィンドウに表示される標準ブラウザ機能を宣言するオプションの文字列。このパラメータを省略した場合、
新しいウィンドウにはすべての標準機能が含まれます。ウィンドウ特性の表で、この文字列の形式について詳しく説明します
replace:
オプションのブール値。ウィンドウにロードされた URL がウィンドウの閲覧履歴に新しいエントリを作成するか、閲覧履歴の現在のエントリを置き換えるかを指定します。次の値がサポートされています:
true - URL は閲覧履歴の現在のエントリを置き換えます。
false - URL は閲覧履歴に新しいエントリを作成します


send()send() は、既に接続されているソケットにデータを送信するために使用されます。エラーがない場合、戻り値は送信されたデータの合計数です 。それ以外の場合は、SOCKET_ERROR を返します。 [1] Send も英語の単語です。



responseText 属性:


サーバープロセスによって返されたデータのテキストバージョン
サーバープロセスによって返されたデータの DOM 互換 XML ドキュメントオブジェクトステータスステータスサーバーによって返されたステータスコード (例: : 404 = "ファイルが見つかりません"。
リクエスト ajax バックグラウンド プログラムが xmlhttp リクエストを送信すると、バックグラウンド プログラムはリクエストを受信した後、そのリクエストを処理します。処理が完了すると、一連のデータをフロント デスクに返すことができます。 ,
これはresponseTextです。
一般的にバックグラウンドプログラムC#ではResponse.Write(" String")ですphpで使うのは出力文字列であるecho…です文字列を出力したいけど時々あるからです配列を取得しますが、それをシリアル化する必要があります。PHP の json テクノロジを使用して、配列が文字列に変換されてフロントエンドに出力されます。フロントエンドの respText 属性はこの文字列を受け取り、この文字列を変換するための JS の json テクノロジー 再度JSが認識するオブジェクトに変換して操作します(jsonデータの送信型は基本的にどの言語でも知られており、さまざまな言語での送信や変換に利用できます)


XMLHttpRequestオブジェクトを初期化する

  if (window.XMLHttpRequest) {// Mozilla, Safari, ...
var http_request = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE 5 ,6
var http_request = new ActiveXObject("Microsoft.XMLHTTP");
}
ログイン後にコピー

XMLHttpRequestはHTTPを発行するrequest

http_request.open("GET|POST","test.php?GET方式传值",true);
          http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); //仅POST请求时需要设置
         //用于向一个已经连接的socket发送数据
         //如果是POST传输方式要把值写在send()函数里
          http_request.send(向一个已连接的套接口发送数据);
      XMLHttpRequest取得响应数据并显示
       http_request.onreadystatechange=function(){
if(http_request.readyState==4  && http_request.status==200){
                    $("p").text(http_request.responseText)
         }
      }
ログイン後にコピー

例:
//GET メソッド
パラメーター 1: リクエストを get モードで送信するか、post モードで送信するかを表します パラメーター 2: リクエストをどの URL に送信するかを表します パラメーター 3: true は非同期リクエストを表し、false は同期リクエストを表しますrequest

http_request.open("GET","test.php?user_name="+username.val(),true);
http_request.send();
ログイン後にコピー

POSTリクエストを送信する

var username=$("input[name='user_name']");
ログイン後にコピー

パラメータ1: リクエストをgetモードで送信するかpostモードで送信するかを表しますパラメータ2: リクエストをどのURLに送信するかを表しますパラメータ3: trueは非同期リクエストを表し、falseは同期リクエストを表しますrequest

http_request.open("POST","test.php",true);
http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ログイン後にコピー

POST送信メソッドの場合はsend()関数に値を記述します

http_request.send({username:username});
ログイン後にコピー


IV. JSON
Javascript Object Notationは軽量なデータ交換形式です
JSONはあらゆる言語で認識され、さまざまな言語でデータを変換するために使用します
JSON サポート 複数の言語
形式
{key:value,key:value,....} オブジェクト形式
[{key:value,key:value,... ..},{key:value,key:value, .....},......] 配列形式
PHP処理:
$json=json_encode($array) //変数のJsonエンコード
$ array=json_decode($json) //JsonデータをデコードしてPHP変数に変換
JavaScript処理:
eval('('+json+')') //JSコードに従って特定の文字列を実行
例:

eval("x=10;y=20;document.write(x*y)")
document.write(eval("2+2"))
JSON.parse(json) //对传过来的json字符串进行解码,变成JS认识的对象
JSON.stringify(obj) //将JS中的值编译成json字符串
ログイン後にコピー

Jquery 1℃のAjaxアプリケーション。 ) シーケンステーブルテーブルの内容は文字列でシリアル化されます データは Ajax リクエストに使用されます

$.ajax({
            //你要传的php文件的路径
            url:"test1.php",    ('服务器url地址')
            //以get方式传输拼接字符串
            data:"user_name="+$('input[name="user_name"]').val(),('名=值&名=值&.....',)
            //以什么方式传输
            type:'get',('post|get')
            //传输返回的数据类型
            dataType:'json',  ('xml|html|text|json|script')
            //展示 数据的方式
            success:function(res){
                $('h1').text('用户名为:'+res.user_name);
            },
                //错误信息
                error:function(xhr){
                },
              timeout:2000,
              async:true,
              cache:false
})
ログイン後にコピー

例:

$.get()
$.get('服务器url地址',"json格式或字符串格式",function(res){
        //处理返回的数据
}), "xml|html|json|text|script")
ログイン後にコピー

php

            //'服务器url地址',"json格式或字符串格式"
        $.get("test1.php",{user_name:$("input[name='user_name']").val()},function(data){
               //如果后台发过来的值跟这里的值相等让他执行下面代码
                if(data.status=='ok'){
                    alert("登陆成功");
                    location.href="http://www.wl.com";
                }else{
                    alert("登陆失败");
                }
        //"xml|html|json|text|script"类型
        },'json')
ログイン後にコピー
で出力を受信して​​処理します

以上がjQueryのAJAXの知識まとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

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

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

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 06, 2024 pm 01:12 PM

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

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

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

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

See all articles