検索

jQueryのAJAXの知識まとめ

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

今回は編集者が皆さんのために 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 までご連絡ください。
JavaScript in Action:実際の例とプロジェクトJavaScript in Action:実際の例とプロジェクトApr 19, 2025 am 12:13 AM

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

JavaScriptとWeb:コア機能とユースケースJavaScriptとWeb:コア機能とユースケースApr 18, 2025 am 12:19 AM

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

JavaScriptエンジンの理解:実装の詳細JavaScriptエンジンの理解:実装の詳細Apr 17, 2025 am 12:05 AM

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

Python vs. JavaScript:学習曲線と使いやすさPython vs. JavaScript:学習曲線と使いやすさApr 16, 2025 am 12:12 AM

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

Python vs. JavaScript:コミュニティ、ライブラリ、リソースPython vs. JavaScript:コミュニティ、ライブラリ、リソースApr 15, 2025 am 12:16 AM

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

C/CからJavaScriptへ:すべてがどのように機能するかC/CからJavaScriptへ:すべてがどのように機能するかApr 14, 2025 am 12:05 AM

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

JavaScriptエンジン:実装の比較JavaScriptエンジン:実装の比較Apr 13, 2025 am 12:05 AM

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

ブラウザを超えて:現実世界のJavaScriptブラウザを超えて:現実世界のJavaScriptApr 12, 2025 am 12:06 AM

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

See all articles

ホット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ヘンタイを無料で生成します。

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

メモ帳++7.3.1

メモ帳++7.3.1

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

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。