ホームページ > 記事 > ウェブフロントエンド > jQueryの解析 Ajax操作 (1) データのロード
Ajax
一般に、ページを更新せずにデータをサーバーまたはクライアントからロードできます。もちろん、これらのデータの形式は多様です。 Ajax
通俗来讲即不需要刷新页面即可从服务器或客户端上加载数据,当然这些数据的格式是多种多样的。
我们通常使用加载 HTML
的方法来加载 HTML
片段,并插入到指定位置,假设当前页面为:
<p></p> <button>load</button>
同目录下的 test.html
文件内容为:
<span>test</span>
我们可以使用 load
方法来加载 HTML
,将其绑定到按钮的点击事件上:
$('button').click(function() { $('p').load('test.html'); });
点击按钮后:
JSON
即 <a href="http://www.php.cn/wiki/48.html" target="_blank">Javascript</a> Object Notation
,直译过来即 Javascript
对象表示法,因此它能很方便地表示和传输数据,它规定键和值都必须包含在双引号内,且函数为非法 JSON
值。
{ "name": "stephenlee", "sex": "male" }
将上述 JSON
数据保存在 test.json
文件内。我们可以使用 getJSON
方法加载 JSON
数据,同样将其绑定在按钮的点击事件上:
$('button').click(function() { $.getJSON('test.json'); });
由于 getJSON
方法是作为 jquery
的全局对象而定义的,因此这里需要使用 $
来调用该方法。这里的 $
指的是全局 jQuery
对象,而不是 $()
所指的个别 jQuery
对象。因此我们也称 getJSON
函数为全局函数。
但我们会发现上述代码只是获取了 JSON
数据,但看不出任何效果,这里我们可以使用 getJSON
方法的第二参数作为回调函数来测试效果:
$('button').click(function() { $.getJSON('test.json', function(data) { console.log(data); $.each(data, function(index, content) { console.log(content); }) }); });
点击按钮后,我们来看下 console
内的输出:
这里的 each
函数的第一个参数可以接收数组或对象,第二个参数为值回调函数,将每次循环中数组或对象的当前索引和值做为参数。
有时候我们不希望在页面初次加载时就加载所有的 JS
文件,而是动态地根据需求来加载,假设当前目录下有一个 JS
文件,内容为一个简单的 alert
:
$(function() { alert('test');// })
我们可以使用全局函数 getScript
来加载该文件,同样绑定到按钮的点击事件上:
$('button').click(function() { $.getScript('test.js'); });
点击按钮后,加载 test.js
文件,并成功触发 alert
。
对 XML
的加载操作与 JSON
类似,因为 XML
文档的作用也是与数据存储相关,在同目录下创建 text.xml
文件,内容为:
<person> <name>stephenlee</name> <sex>male</sex> </person>
加载 XML
文档可以直接使用 get
方法,为什么看上去像一个默认方法,这个可以根据 AJAX
的全称看出端倪 – Asynchronous JavaScript And XML
。
同样将其绑定在按钮点击事件上:
$('button').click(function() { $.get('test.xml', function(data) { console.log(data); }); });
查看 console
结果为:
这里需要注意,如果 XML
HTML
の読み込みメソッドを使用して、HTML
フラグメントを読み込み、現在の指定された位置に挿入します。ページは: 🎜rrreee 🎜 🎜🎜同じディレクトリ内の test.html
ファイルの内容は次のとおりです: 🎜rrreee🎜 load
メソッドを使用して HTML をバインドして、<a href="http://www.php.cn/php/php-tp-incident.html" target="_blank">イベント</a> をクリックしてボタンにバインドします: 🎜rrreee🎜ボタンをクリック後: 🎜 🎜<img src="https://img.php.cn/upload/article/000/001/506/208dda6825aada072684af2851c039ee-1.jpg" alt="jQuery Ajax 操作の詳細 (1) -データの読み込み"> 🎜<h2>JSON の読み込み</h2>🎜<code>JSON
、つまり <a href="http://www.php.cn/wiki/48.html"> Javascript</a> Object Notation
は、文字通り Javascript
オブジェクト表記法と訳されるため、データを簡単に表現して送信できるように、キーと値の両方が必要であると規定されています。二重引用符で囲む必要があり、関数は不正な JSON
値です。 🎜rrreee🎜上記の JSON
データを test.json
ファイルに保存します。 getJSON
メソッドを使用して JSON
データをロードし、それをボタンのクリック イベントにバインドすることもできます。メソッドは jquery
のグローバル オブジェクトによって定義されているため、このメソッドを呼び出すには $
を使用する必要があります。ここで、$
は、$()
が参照する個々の jQuery
オブジェクトではなく、グローバル jQuery
オブジェクトを参照します。したがって、getJSON
関数も グローバル関数 と呼びます。 JSON
データを取得するだけで、何の効果も見られないことがわかります。ここでは、getJSON
メソッドの 2 番目のパラメータを次のように使用できます。効果をテストするための コールバック関数: 🎜rrreee🎜ボタンをクリックした後、見てみましょうコンソールで
内の出力: 🎜🎜🎜🎜ここでの each
関数の最初のパラメーターは配列またはオブジェクトを受け取ることができ、2 番目のパラメーターは値のコールバック関数です。各ループ内の配列またはオブジェクト 現在のインデックスと値がパラメータとして使用されます。 🎜JS
ファイルを読み込みたくない場合がありますが、要求に基づいて動的に読み込みます。現在のディレクトリ JS
ファイル、内容は単純な alert
です: 🎜rrreee🎜 グローバル関数 getScript
を使用してファイルをロードすることもできます。それをボタンにバインドします クリック イベント時: 🎜rrreee🎜 ボタンをクリックした後、test.js
ファイルがロードされ、alert
が正常にトリガーされます。 🎜XML
ドキュメントは、データ ストレージに関連して、コンテンツと同じディレクトリに text.xml
ファイルを作成します。 🎜rrreee🎜XML
ドキュメントのロードでは、get
を直接使用できます。 > メソッドですが、これは AJAX
– Asynchronous JavaScript And XML
という完全な名前からわかるように、デフォルトのメソッドのように見えます。 console
。結果は次のようになります: 🎜🎜🎜🎜ここで注意が必要なのは、XML の形式である場合です。 code> document Error。エラーは報告されませんが、コールバック関数は実行されません。 🎜
以上がjQueryの解析 Ajax操作 (1) データのロードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。