JSチュートリアル

JSホーム JSの紹介 JSどこへ JS出力 JSステートメント JS構文 JSコメント JS変数 JS Let JSConst JSオペレーター JS算術 JS割り当て JSデータ型 JS関数 JSオブジェクト JSイベント JS文字列 JS文字列メソッド JS文字列検索 JS文字列テンプレート JS番号 JS番号メソッド JSアレイ JS配列メソッド JS配列ソート JSアレイの反復 JSアレイ定数 JSの日付 JSの日付形式 JS DateGetメソッド JS日付設定メソッド JS数学 JSランダム JSブール値 JSの比較 JS条件 JSスイッチ JSループFor JSループフォーイン JSループの JSループWhile JSブレイク JSIterables JSセット JSマップ JS Typeof JS型変換 JSビット単位 JS RegExp JSエラー JSスコープ JSホイスト JS厳密モード JSこのキーワード JSアロー関数 JSクラス JS JSON JSデバッグ JSスタイルガイド JSのベストプラクティス JSの間違い JSパフォーマンス JS予約語

JSバージョン

JSバージョン JS 2009(ES5) JS 2015(ES6) JS 2016 JS 2017 JS 2018 JS IE /エッジ JSの歴史

JSオブジェクト

オブジェクト定義 オブジェクトのプロパティ オブジェクトメソッド オブジェクト表示 オブジェクトアクセサー オブジェクトコンストラクター オブジェクトのプロトタイプ オブジェクト反復可能 オブジェクトセット オブジェクトマップ オブジェクトリファレンス

JS関数

関数の定義 関数パラメーター 関数の呼び出し 関数呼び出し 機能適用 関数クロージャ

JSクラス

クラスイントロ クラス継承 クラス静的

JS非同期

JSコールバック JS非同期 JSの約束 JS Async / Await

JS HTML DOM

DOMイントロ DOMメソッド DOMドキュメント DOM要素 DOM HTML DOMフォーム DOM CSS DOMアニメーション DOMイベント DOMイベントリスナー DOMナビゲーション DOMノード DOMコレクション DOMノードリスト

JSブラウザBOM

JSウィンドウ JS画面 JSロケーション JSの歴史 JSナビゲーター JSポップアップアラート JSタイミング JSクッキー

JS Web API

WebAPIイントロ WebフォームAPI Web履歴API WebストレージAPI WebワーカーAPI Web Fetch API Web Geolocation API

JS AJAX

AJAXイントロ AJAX XMLHttp AJAXリクエスト AJAX応答 AJAXXMLファイル AJAX PHP AJAX ASP AJAXデータベース AJAXアプリケーション AJAXの例

JS JSON

JSONイントロ JSON構文 JSONとXML JSONデータ型 JSON解析 JSON文字列化 JSONオブジェクト JSON配列 JSONサーバー JSON PHP JSON HTML JSON JSONP

JSとjQuery

jQueryセレクター jQuery HTML jQuery CSS jQuery DOM

JSグラフィックス

JSグラフィックス JSキャンバス JSPlotly JS Chart.js JSグーグルチャート JS D3.js

JSの例

JSの例 JS HTML DOM JSHTML入力 JSHTMLオブジェクト JSHTMLイベント JSブラウザ JSエディター JS演習 JSクイズ JS証明書

JSリファレンス

JavaScriptオブジェクト HTMLDOMオブジェクト


AJAXの紹介

AJAXは、次のことができるため、開発者の夢です。

  • Webサーバーからデータを読み取る-ページが読み込まれた後
  • ページをリロードせずにWebページを更新する
  • バックグラウンドでWebサーバーにデータを送信する

AJAXの例

Let AJAX change this text


AJAXの例の説明

HTMLページ

<!DOCTYPE html>
<html>
<body>

<div id="demo">
  <h2>Let AJAX change this text</h2>
  <button type="button" onclick="loadDoc()">Change Content</button>
</div>

</body>
</html>

HTMLページには、<div>セクションと<button>が含まれています。

<div>セクションは、サーバーからの情報を表示するために使用されます。

<ボタン>は関数を呼び出します(クリックされた場合)。

この関数は、Webサーバーにデータを要求し、それを表示します。

関数loadDoc()

function loadDoc() {
  const xhttp = new XMLHttpRequest();
  xhttp.onload = function() {
    document.getElementById("demo").innerHTML = this.responseText;
    }
  xhttp.open("GET", "ajax_info.txt", true);
  xhttp.send();
}


AJAXとは何ですか?

AJAX =同期JavaScriptおよびXML _ _

AJAXはプログラミング言語ではありません。

AJAXは、次の組み合わせを使用します。

  • ブラウザ組み込みXMLHttpRequestオブジェクト(Webサーバーからのデータを要求するため)
  • JavaScriptおよびHTMLDOM(データを表示または使用するため)

AJAXは誤解を招く名前です。AJAXアプリケーションはXMLを使用してデータを転送する場合がありますが、データをプレーンテキストまたはJSONテキストとして転送することも同様に一般的です。

AJAXを使用すると、バックグラウンドでWebサーバーとデータを交換することにより、Webページを非同期で更新できます。これは、ページ全体をリロードすることなく、Webページの一部を更新できることを意味します。


AJAXのしくみ

AJAX

  • 1. Webページでイベントが発生します(ページが読み込まれ、ボタンがクリックされます)
  • 2.XMLHttpRequestオブジェクトはJavaScriptによって作成されます
  • 3.XMLHttpRequestオブジェクトはWebサーバーにリクエストを送信します
  • 4.サーバーがリクエストを処理します
  • 5.サーバーは応答をWebページに送り返します
  • 6.応答はJavaScriptによって読み取られます
  • 7.適切なアクション(ページの更新など)はJavaScriptによって実行されます

最新のブラウザ(Fetch API)

最新のブラウザでは、XMLHttpRequestオブジェクトの代わりにFetchAPIを使用できます。

Fetch APIインターフェースを使用すると、WebブラウザーはWebサーバーに対してHTTP要求を行うことができます。

XMLHttpRequestオブジェクトを使用する場合、Fetchは同じことをより簡単な方法で行うことができます。