jQuery - AJAX の概要とメソッド

jQuery - AJAX の概要

AJAX とは何ですか?

AJAX = 非同期 JavaScript および XML。

簡単に言うと、AJAX は Web ページ全体を再読み込みせずに、バックグラウンドでデータを読み込み、Web ページに表示します。

jQueryとAJAXについて

jQueryはAJAXに関連するメソッドを複数提供しています。

jQuery AJAX メソッドを使用すると、HTTP Get および HTTP Post を使用してリモート サーバーからテキスト、HTML、XML、または JSON をリクエストできます。また、この外部データを Web ページの選択した要素に直接読み込むことができます。

jQuery がなければ、AJAX プログラミングはまだ少し難しいです。

ブラウザごとに AJAX の実装方法が異なるため、通常の AJAX コードを記述するのは簡単ではありません。これは、ブラウザをテストするために追加のコードを作成する必要があることを意味します。ただし、jQuery チームはこの問題を解決してくれました。AJAX 関数を実装するために必要なコードは 1 行だけです。

AJAXのload()メソッド

jqueryのload()メソッドは、jquery ajaxの非リフレッシュメソッドの1つで、指定されたIDにページのコンテンツを直接ロードでき、パラメータを使用してリフレッシュすることもできます。 . ページでは、load() の使用法とよくある問題について紹介します。

構文:

$(selector).load(URL,data,callback);

必須の URL パラメーターは、ロードする URL を指定します。

オプションの data パラメーターは、リクエストとともに送信されるクエリ文字列のキーと値のペアのセットを指定します。

オプションのコールバック パラメーターは、load() メソッドの完了後に実行される関数の名前です。

例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src=" 
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("#div1").load("");});
});
</script>
</head>
<body>
<div id="div1">
<h2>使用 jQuery AJAX 修改文本内容</h2>
</div>
<button>获取外部内容</button>
</body>
</html>

jQuery セレクターを URL パラメーターに追加することもできます。

次の例では、「demo_test.txt」ファイル内の id="p1" を持つ要素のコンテンツを、指定された <div> 要素にロードします

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("button").click(function(){
    $("#div1").load("/try/ajax/demo_test.txt #p1");
  });
});
</script>
</head>
<body>
<div id="div1"><h2>使用 jQuery AJAX 修改文本</h2></div>
<button>获取外部文本</button>
</body>
</html>

オプションのコールバック パラメーターは、load() メソッドの後に何を行うかを指定します完了しました 許可されたコールバック関数。コールバック関数はさまざまなパラメーターを設定できます:

responseTxt - 呼び出しが成功したときの結果の内容が含まれます

statusTXT - 呼び出しのステータスが含まれます

jQuery get() メソッドと post() メソッドはサーバーからのデータをリクエストするために使用されますHTTP GET または POST リクエスト経由。

HTTP リクエスト: GET と POST クライアント側とサーバー側でのリクエストとレスポンスの 2 つの一般的な方法は、GET と POST です。 GET - 指定されたリソースからデータをリクエスト POST - 処理対象のデータを指定されたリソースに送信します

GET は基本的にサーバーからデータを取得(取得)するために使用されます。注: GET メソッドはキャッシュされたデータを返す場合があります。

POST はサーバーからデータを取得するためにも使用できます。ただし、POST メソッドはデータをキャッシュしないため、リクエストとともにデータを送信するためによく使用されます。

jQuery $.get() メソッド

$.get() メソッドは、HTTP GET リクエストを介してサーバーにデータを要求します。

構文:

$.get(URL,callback);

必須の URL パラメーターは、リクエストする URL を指定します。

オプションのコールバック パラメーターは、リクエストが成功した後に実行される関数の名前です。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.get("/try/ajax/demo_test.php",function(data,status){
alert("数据: " + data + "\n状态: " + status);
});
});
});
</script>
</head>
<body>
<button>发送一个 HTTP GET 请求并获取返回结果</button>
</body>
</html>

$.get() の最初のパラメータは、リクエストする URL (「demo_test.php」) です。

2 番目のパラメータはコールバック関数です。最初のコールバック パラメータには要求されたページのコンテンツが保存され、2 番目のコールバック パラメータにはリクエストのステータスが保存されます。

ヒント: この PHP ファイル (「demo_test.php」) は次のようになります:

<?php
echo 'これは PHP ファイルから読み取られたデータです。 ';
?>

jQuery $.post() メソッド

$.post() メソッドは、HTTP POST リクエストを介してサーバーにデータを要求します。

構文:

$.post(URL,data,callback);

必須の URL パラメーターは、リクエストする URL を指定します。

オプションの data パラメーターは、リクエストとともに送信されるデータを指定します。

オプションのコールバック パラメーターは、リクエストが成功した後に実行される関数の名前です。

次の例では、$.post() を使用してリクエストとともにデータを送信します:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.post("/try/ajax/demo_test_post.php",{
name:"php中文网",
url:"http://www.php.cn"
},
function(data,status){
alert("数据: \n" + data + "\n状态: " + status);
});
});
});
</script>
</head>
<body>
<button>发送一个 HTTP POST 请求页面并获取返回内容</button>
</body>
</html>

$.post() の最初のパラメーターは、リクエストする URL (「demo_test_post.php」) です。

その後、リクエスト (名前と都市) とともにデータを送信します。

「demo_test_post.php」の PHP スクリプトは、これらのパラメーターを読み取り、処理し、結果を返します。

3 番目のパラメーターはコールバック関数です。最初のコールバック パラメータには要求されたページのコンテンツが保存され、2 番目のパラメータにはリクエストのステータスが保存されます。

ヒント: この PHP ファイル (「demo_test_post.php」) は次のようになります:

<?php
$name = isset($_POST['name']) ? htmlspecialchars($_POST['name']) : '';
$city = isset($_POST['url']) ? htmlspecialchars($_POST['url']) : '';
echo '网站名: ' . $name;
echo "\n";
echo 'URL 地址: ' .$city;
?>


学び続ける
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> $(document).ready(function(){ $("button").click(function(){ $.post("/try/ajax/demo_test_post.php",{ name:"php中文网", url:"http://www.php.cn" }, function(data,status){ alert("数据: \n" + data + "\n状态: " + status); }); }); }); </script> </head> <body> <button>发送一个 HTTP POST 请求页面并获取返回内容</button> </body> </html>
  • おすすめコース
  • コースウェアのダウンロード
現時点ではコースウェアはダウンロードできません。現在スタッフが整理中です。今後もこのコースにもっと注目してください〜