Rumah >hujung hadapan web >tutorial js >Pengenalan Kaedah Ajax JQuery ' s
mata teras
$.ajax()
, load()
dan $.post()
. $.get()
Kaedah load()
Kaedah $.post()
Kaedah $.get()
Sudah tentu, anda boleh menggunakan javascript mentah untuk melaksanakan panggilan Ajax, tetapi ia boleh menyusahkan untuk mengendalikan semua bahagian yang berlainan kod. Ini benar terutamanya jika anda perlu menyokong pelayar lama seperti Internet Explorer 6.
bernasib baik, JQuery memberikan kita satu set cara untuk menangani masalah ini, yang membolehkan kita memberi tumpuan kepada tugas -tugas yang ingin kita capai dengan kod kita. JQuery menyediakan kaedah utama
yang boleh dikonfigurasikan dengan sangat sesuai dengan keperluan anda. Ia juga menyediakan satu set kaedah singkatan yang dipanggil kaedah singkatan, kerana ia hanya pembalut $.ajax()
kaedah dengan konfigurasi pratetap, masing -masing melayani satu tujuan. $.ajax()
, semua kaedah mempunyai satu perkara yang sama: mereka tidak beroperasi pada satu set elemen DOM, tetapi dipanggil terus dari objek jQuery. Oleh itu, kami tidak akan menulis kenyataan seperti ini: $.ajax()
<code class="language-javascript">$('p').ajax(...);</code>ini akan memilih semua perenggan di halaman, kemudian hubungi kaedah
, dan sebaliknya tulis: ajax()
<code class="language-javascript">$.ajax(...);</code>Dalam artikel ini, kita akan membincangkan tiga kaedah singkatan jQuery yang paling biasa digunakan:
, load()
dan $.post()
. $.get()
LOAD ()
Kaedah pertama yang akan kita bincangkan ialah. Ia membolehkan kami memuatkan data dari pelayan dan meletakkan data yang dikembalikan (biasanya kod HTML) ke dalam elemen yang memilih pemadanan. Sebelum menggunakannya, mari kita lihat tandatangannya: load()
<code class="language-javascript">load(url[, data][, callback])</code>Makna setiap parameter adalah seperti berikut:
url
: rentetan yang menyatakan URL sumber yang anda mahu hantar permintaan;
data
callback
Katakan anda mempunyai elemen di laman web anda dengan id utama, yang mewakili kandungan utama. Apa yang kita mahu lakukan adalah secara asynchronously memuat kandungan utama halaman yang dirujuk dalam pautan dalam menu utama, idealnya ID adalah menu utama. Kami hanya mahu mengambil kandungan di dalam elemen ini, kerana susun atur yang lain tidak akan berubah, jadi mereka tidak perlu dimuatkan.
Pendekatan ini dimaksudkan sebagai peningkatan kerana jika pengguna yang melawat laman web telah melumpuhkan JavaScript, mereka masih dapat melayari laman web menggunakan mekanisme penyegerakan biasa. Kami mahu melaksanakan ciri ini kerana ia dapat meningkatkan prestasi laman web. Dalam contoh ini, kami mengandaikan bahawa semua pautan dalam menu adalah pautan dalaman.
Menggunakan kaedah jQuery dan
, kita dapat menyelesaikan tugas ini dengan kod berikut:
load()
<code class="language-javascript">$('p').ajax(...);</code>
Untuk menyelesaikan masalah ini, jQuery membolehkan kami menambah pemilih dengan segera selepas URL yang ditentukan. Menggunakan fungsi ini dari kaedah , kita boleh menulis semula kod sebelumnya kepada: Kali ini kita mencari halaman, kemudian menapis kod HTML, menyuntik hanya keturunan elemen dengan id utama. Kami termasuk pemilih sejagat (
) kerana kami ingin mengelakkan unsur -unsur #main di dalam elemen #main;
load()
Contoh ini baik, tetapi ia hanya menunjukkan penggunaan salah satu parameter yang ada. Mari lihat lebih banyak kod!
<code class="language-javascript">$.ajax(...);</code>Gunakan fungsi panggil balik dengan beban ()
*
Parameter panggil balik boleh digunakan untuk memberitahu pengguna penyempurnaan operasi. Mari kita kemas kini contoh sebelumnya untuk kali terakhir untuk menggunakannya.
Kali ini kita menganggap kita mempunyai elemen dengan pemberitahuan ID-bar dan ia akan digunakan sebagai ... baik, pemberitahuan bar.
, mari kita berikan perhatian kita kepada kaedah seterusnya.
$. Post ()
<code class="language-javascript">load(url[, data][, callback])</code>
Kadang -kadang kita mahu menyuntik kandungan yang dikembalikan oleh pelayan ke dalam satu atau lebih elemen. Kami mungkin mahu mengambil data dan kemudian memutuskan apa yang perlu dilakukan dengannya selepas mencari data. Untuk melakukan ini, kita boleh menggunakan kaedah $.post()
atau $.get()
.
Mereka berfungsi sama (membuat permintaan ke pelayan) dan sama dari segi tandatangan dan parameter yang diterima. Satu -satunya perbezaan ialah seseorang menghantar permintaan pos dan yang lain menghantar permintaan GET. Jelas, bukan?
Jika anda tidak ingat perbezaan antara permintaan pos dan permintaan GET, jika permintaan kami boleh menyebabkan keadaan sisi pelayan berubah, menghasilkan respons yang berbeza, anda harus menggunakan pos. Jika tidak, ia harus menjadi permintaan GET.
$.post()
Tandatangan kaedah ialah:
<code class="language-javascript">$('p').ajax(...);</code>
Parameter adalah seperti berikut:
url
: rentetan yang menyatakan URL sumber yang anda mahu hantar permintaan;
data
callback
type
$.post()
Katakan kita mempunyai borang untuk mengisi. Setiap kali bidang kehilangan fokus, kami ingin menghantar data medan ke pelayan untuk mengesahkan kesahihannya. Kami akan mengandaikan bahawa pelayan mengembalikan maklumat dalam format JSON. Kes penggunaan biasa adalah untuk mengesahkan bahawa pengguna yang dipilih nama pengguna belum diduduki.
Untuk melaksanakan fungsi ini, kita boleh menggunakan kaedah JQuery's
seperti berikut:
$.post()
<code class="language-javascript">$.ajax(...);</code>
untuk memberi anda pemahaman yang lebih baik tentang apa jenis objek JSON ini kelihatan seperti, inilah contoh:
seperti yang saya katakan,
<code class="language-javascript">load(url[, data][, callback])</code>adalah sama seperti
kecuali kerana dapat membuat permintaan. Jadi bahagian seterusnya akan sangat pendek dan saya akan memberi tumpuan kepada beberapa kes penggunaan dan bukannya mengulangi maklumat yang sama. $.get()
$.post()
adalah sama dengan kaedah Kesimpulan Dalam artikel ini, kita membincangkan beberapa kaedah singkatan Ajax yang paling biasa digunakan untuk jQuery. Mereka adalah cara yang sangat mudah untuk melaksanakan permintaan Ajax, dan seperti yang dapat kita lihat, dalam versi asas mereka, hanya mengambil satu baris kod untuk mencapai apa yang kita mahu. Sila periksa dokumentasi singkatan Ajax JQuery untuk maklumat lanjut mengenai kaedah ini dan lain -lain. Walaupun kami tidak membincangkan apa -apa lagi di sini, anda sepatutnya dapat menggunakan pengetahuan yang anda perolehi dalam artikel ini untuk memulakan dengan kaedah lain. (bahagian FAQ harus ditambah di sini, kandungannya sama dengan bahagian FAQ dalam teks input) $.get()
adalah salah satu kaedah yang disediakan oleh jQuery untuk mengeluarkan permintaan mendapatkan. Kaedah ini memulakan permintaan GET ke pelayan menggunakan URL yang ditentukan dan data pilihan yang disediakan. Selepas permintaan selesai, ia juga boleh melaksanakan fungsi panggil balik. Tandatangannya adalah seperti berikut: <code class="language-javascript">$('p').ajax(...);</code>
Parameter $.post()
, jadi saya tidak akan mengulanginya di sini. $.get()
sesuai untuk kes -kes di mana pelayan sentiasa mengembalikan hasil yang sama untuk set parameter yang diberikan. Ia juga merupakan pilihan yang baik untuk sumber yang anda mahu pengguna dapat berkongsi. Sebagai contoh, untuk perkhidmatan pengangkutan (seperti maklumat jadual waktu kereta api), orang yang mencari tarikh dan masa yang sama mesti mendapatkan hasil yang sama, dan permintaan GET adalah ideal. Di samping itu, jika halaman boleh bertindak balas untuk mendapatkan permintaan, pengguna boleh berkongsi hasil yang mereka dapatkan dengan rakan -rakan mereka - keajaiban URL.
Atas ialah kandungan terperinci Pengenalan Kaedah Ajax JQuery ' s. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!