Rumah hujung hadapan web tutorial js Pengenalan kepada fungsi dan kegunaan Ajax

Pengenalan kepada fungsi dan kegunaan Ajax

Jan 30, 2024 am 09:30 AM
ajax penyerahan borang

Pengenalan kepada fungsi dan kegunaan Ajax

Ikhtisar fungsi praktikal Ajax

Dalam pembangunan web moden, Ajax (JavaScript Asynchronous dan XML) telah menjadi alat yang sangat biasa digunakan. Dengan menggunakan Ajax, kami boleh mencapai interaksi data tanpa memuat semula halaman, meningkatkan pengalaman pengguna dan mengurangkan beban pelayan. Artikel ini akan memberikan gambaran keseluruhan beberapa fungsi praktikal Ajax, dengan contoh kod khusus.

1. Hantar borang tanpa menyegarkan

Salah satu fungsi paling asas menggunakan Ajax ialah menyerahkan borang tanpa menyegarkan. Penyerahan borang HTML tradisional menyebabkan keseluruhan halaman dimuat semula, tetapi menggunakan Ajax membolehkan anda menyerahkan borang dan menerima respons pelayan tanpa memuat semula halaman.

Berikut ialah contoh pelaksanaan mudah:

<form id="myForm" action="submit.php" method="post">
  <input type="text" name="username">
  <input type="password" name="password">
  <button onclick="submitForm()">提交</button>
</form>

<script>
function submitForm() {
  var form = document.getElementById("myForm");
  var formData = new FormData(form);

  var xhr = new XMLHttpRequest();
  xhr.open("POST", form.action, true);
  xhr.onreadystatechange = function() {
    if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
      var response = xhr.responseText;
      // 处理服务器响应
    }
  };
  xhr.send(formData);
}
</script>
Salin selepas log masuk

Dalam kod di atas, apabila butang hantar diklik, fungsi submitForm() akan dipanggil. Fungsi ini mendapatkan data borang melalui objek FormData dan menggunakan objek XMLHttpRequest untuk menghantar permintaan POST ke pelayan. Apabila pelayan mengembalikan respons, kami boleh mengendalikan respons pelayan dalam acara xhr.onreadystatechange. submitForm()函数会被调用。该函数通过FormData对象获取表单的数据,并使用XMLHttpRequest对象发送POST请求到服务器。当服务器返回响应时,我们可以在xhr.onreadystatechange事件中处理服务器的响应。

二、动态加载数据

通过Ajax,我们可以在不刷新整个页面的情况下动态加载数据。这在创建交互性强的网页应用程序时非常有用。

以下代码展示了如何使用Ajax从服务器端动态加载数据并展示在页面上:

<div id="dataContainer"></div>

<script>
var xhr = new XMLHttpRequest();
xhr.open("GET", "data.json", true);
xhr.onreadystatechange = function() {
  if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
    var data = JSON.parse(xhr.responseText);

    var container = document.getElementById("dataContainer");
    data.forEach(function(item) {
      var element = document.createElement("div");
      element.textContent = item.name;
      container.appendChild(element);
    });
  }
};
xhr.send();
</script>
Salin selepas log masuk

在上面的代码中,我们使用XMLHttpRequest对象发送GET请求到服务器,获取名为data.json的数据。当服务器返回响应时,我们使用JSON.parse()解析响应的文本,并将数据展示在名为dataContainer<div>元素中。

三、实时搜索

Ajax还可以用于实现实时搜索功能。用户在搜索框中输入关键词时,页面会立即向服务器发送请求并加载相应的搜索结果,从而实现实时展示搜索结果的效果。

以下是一个基本的实时搜索示例代码:

<input type="text" id="searchInput" oninput="search()" placeholder="搜索...">

<ul id="searchResults"></ul>

<script>
function search() {
  var keyword = document.getElementById("searchInput").value;
  var xhr = new XMLHttpRequest();
  xhr.open("GET", "search.php?keyword=" + keyword, true);
  xhr.onreadystatechange = function() {
    if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
      var results = JSON.parse(xhr.responseText);

      var resultsList = document.getElementById("searchResults");
      resultsList.innerHTML = "";

      results.forEach(function(item) {
        var li = document.createElement("li");
        li.textContent = item.name;
        resultsList.appendChild(li);
      });
    }
  };
  xhr.send();
}
</script>
Salin selepas log masuk

在上面的代码中,当用户在搜索框中输入关键词时,search()函数会被调用。该函数通过获取输入框的值,并将其作为参数发送到服务器进行搜索。当服务器返回搜索结果时,我们将结果展示在名为searchResults<ul></ul>

2. Muatkan data secara dinamik

Melalui Ajax, kami boleh memuatkan data secara dinamik tanpa memuat semula keseluruhan halaman. Ini berguna apabila membuat aplikasi web yang sangat interaktif.

Kod berikut menunjukkan cara menggunakan Ajax untuk memuatkan data secara dinamik dari sisi pelayan dan memaparkannya pada halaman: 🎜rrreee🎜Dalam kod di atas, kami menggunakan objek XMLHttpRequest untuk menghantar permintaan GET ke pelayan dan dapatkan data bernama Data data.json. Apabila pelayan mengembalikan respons, kami menggunakan JSON.parse() untuk menghuraikan teks respons dan memaparkan data dalam <div> bernama dataContainer code> elemen. 🎜🎜3. Carian masa nyata🎜🎜Ajax juga boleh digunakan untuk melaksanakan fungsi carian masa nyata. Apabila pengguna memasukkan kata kunci dalam kotak carian, halaman akan segera menghantar permintaan kepada pelayan dan memuatkan hasil carian yang sepadan, dengan itu mencapai kesan memaparkan hasil carian dalam masa nyata. 🎜🎜Berikut ialah kod contoh carian masa nyata asas: 🎜rrreee🎜Dalam kod di atas, apabila pengguna memasukkan kata kunci dalam kotak carian, fungsi search() akan dipanggil. Fungsi ini mencari dengan mendapatkan nilai kotak input dan menghantarnya ke pelayan sebagai parameter. Apabila pelayan mengembalikan hasil carian, kami memaparkan hasilnya dalam elemen <ul></ul> bernama searchResults. 🎜🎜Kesimpulan🎜🎜Artikel ini memperkenalkan tiga fungsi biasa Ajax: menyerahkan borang tanpa menyegarkan, memuatkan data secara dinamik dan carian masa nyata. Melalui contoh kod praktikal, kami menunjukkan cara menggunakan Ajax untuk melaksanakan fungsi ini pada halaman. Sudah tentu, ini hanyalah puncak gunung ais fungsi Ajax yang mempunyai banyak ciri dan kegunaan lain yang berkuasa. Saya harap artikel ini dapat memberi anda sedikit inspirasi tentang penggunaan Ajax dan memainkan peranan dalam projek pembangunan web anda. 🎜

Atas ialah kandungan terperinci Pengenalan kepada fungsi dan kegunaan Ajax. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk mendapatkan data borang dalam layui Bagaimana untuk mendapatkan data borang dalam layui Apr 04, 2024 am 03:39 AM

layui menyediakan pelbagai kaedah untuk mendapatkan data borang, termasuk mendapatkan terus semua data medan borang, mendapatkan nilai elemen bentuk tunggal, menggunakan kaedah formAPI.getVal() untuk mendapatkan nilai medan yang ditentukan, menyerikan data borang dan menggunakannya sebagai parameter permintaan AJAX, dan mendengar acara penyerahan Borang mendapat data.

Bagaimana untuk melaksanakan interaksi front-end dan back-end dalam layui Bagaimana untuk melaksanakan interaksi front-end dan back-end dalam layui Apr 01, 2024 pm 11:33 PM

Terdapat kaedah berikut untuk interaksi hadapan dan belakang menggunakan layui: Kaedah $.ajax: Permudahkan permintaan HTTP tak segerak. Objek permintaan tersuai: membenarkan menghantar permintaan tersuai. Kawalan borang: mengendalikan penyerahan borang dan pengesahan data. Kawalan muat naik: melaksanakan muat naik fail dengan mudah.

Bagaimana untuk menyediakan lompat pada halaman log masuk layui Bagaimana untuk menyediakan lompat pada halaman log masuk layui Apr 04, 2024 am 03:12 AM

Langkah penetapan lompat halaman log masuk Layui: Tambah kod lompat: Tambah pertimbangan dalam borang log masuk serah acara klik butang, dan lompat ke halaman yang ditentukan melalui window.location.href selepas berjaya log masuk. Ubah suai konfigurasi borang: tambah medan input tersembunyi pada elemen borang lay-filter="login", dengan nama "redirect" dan nilainya ialah alamat halaman sasaran.

Apakah peranan Serverlet dalam Java Apakah peranan Serverlet dalam Java Apr 12, 2024 pm 02:39 PM

Servlet berfungsi sebagai jambatan untuk komunikasi pelanggan-pelayan dalam aplikasi Web Java dan bertanggungjawab untuk: memproses permintaan pelanggan menjana respons HTTP secara dinamik menguruskan keadaan sesi HTTP;

Bagaimana untuk membina aplikasi satu halaman menggunakan PHP Bagaimana untuk membina aplikasi satu halaman menggunakan PHP May 04, 2024 pm 06:21 PM

Langkah-langkah untuk membina aplikasi satu halaman (SPA) menggunakan PHP: Cipta fail PHP dan muatkan Vue.js. Tentukan contoh Vue dan buat antara muka HTML yang mengandungi teks input dan output teks. Buat fail rangka kerja JavaScript yang mengandungi komponen Vue. Sertakan fail rangka kerja JavaScript ke dalam fail PHP.

Perbezaan antara acara dan $event dalam vue Perbezaan antara acara dan $event dalam vue May 08, 2024 pm 04:42 PM

Dalam Vue.js, acara ialah peristiwa JavaScript asli yang dicetuskan oleh penyemak imbas, manakala $event ialah objek peristiwa abstrak khusus Vue yang digunakan dalam komponen Vue. Secara amnya lebih mudah untuk menggunakan $event kerana ia diformat dan dipertingkatkan untuk menyokong pengikatan data. Gunakan acara apabila anda perlu mengakses kefungsian khusus objek acara asli.

Apakah senario aplikasi Java Servlet? Apakah senario aplikasi Java Servlet? Apr 17, 2024 am 08:21 AM

JavaServlet boleh digunakan untuk: 1. Penjanaan kandungan dinamik 2. Akses dan pemprosesan borang; Contoh: Cipta FormSubmitServlet untuk mengendalikan penyerahan borang, menggunakan nama dan e-mel sebagai parameter dan mengubah hala ke success.jsp.

Apakah senario yang boleh digunakan untuk pengubah suai peristiwa dalam vue? Apakah senario yang boleh digunakan untuk pengubah suai peristiwa dalam vue? May 09, 2024 pm 02:33 PM

Pengubah suai acara Vue.js digunakan untuk menambah gelagat tertentu, termasuk: menghalang gelagat lalai (.prevent) menghentikan acara menggelegak (.stop) acara sekali (.sekali) menangkap acara (.capture) mendengar acara pasif (.pasif) Suai pengubah suai (.self)Pengubah suai kunci (.key)

See all articles