jQuery - AJAXのload()メソッド
jQueryのload()メソッド
load()メソッドは、サーバーからデータをロードし、返されたデータを選択した要素に配置します。
構文:
$(selector).load(URL,data,callback);
必須の URL パラメーターは、ロードする URL を指定します。
オプションの data パラメーターは、リクエストとともに送信されるクエリ文字列のキーと値のペアのセットを指定します。
オプションのコールバック パラメーターは、load() メソッドの完了後に実行される関数の名前です。
これはサンプル ファイル (「demo_test.txt」) の内容です:
<h2>jQuery AJAX 是个非常棒的功能!</h2> <p id="p1">这是段落的一些文本。</p>
ファイル「demo_test.txt」の内容を指定された <div> 要素にロードします:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <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"); }); }); </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 - 呼び出しのステータスが含まれます
xhr - XMLHttpRequest オブジェクトが含まれます
次の例では、呼び出しの後にプロンプトが表示されます。 load() メソッドがフレームを完成させます。 load() メソッドが成功すると、「外部コンテンツが正常にロードされました!」が表示され、失敗すると、エラー メッセージが表示されます:
<!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",function(responseTxt,statusTxt,xhr){ if(statusTxt=="success") alert("外部内容加载成功!"); if(statusTxt=="error") alert("Error: "+xhr.status+": "+xhr.statusText); }); }); }); </script> </head> <body> <div id="div1"><h2>使用 jQuery AJAX 修改该文本</h2></div> <button>获取外部内容</button> </body> </html>
完全な例: HTML ファイル:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <div class="comment"> 已有评论: </div> <div class="comment"> <h6>张三:</h6> <p class="para">沙发。</p> </div> <div class="comment"> <h6>李四:</h6> <p class="para">板凳。</p> </div> <div class="comment"> <h6>王五:</h6> <p class="para">地板。</p> </div> </body> </html>
別の HTML ファイルを作成し (名前は自由に選択できます)、jQuery AJAX のload() メソッドを記述します:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#send").click(function(){ $("#resText").load("text.html"); //引入text.html文件。 }); }); </script> </head> <body> <input type="button" id="send" value="Ajax获取" /> <div id="resText"></div> </body> </html>