Rumah > hujung hadapan web > tutorial js > Nota Kajian jQuery - Operasi Ajax (3) - Processing_jquery

Nota Kajian jQuery - Operasi Ajax (3) - Processing_jquery

WBOY
Lepaskan: 2016-05-16 16:43:12
asal
1300 orang telah melayarinya

Fungsi pemerhatian

Fungsi ajaxStart dan ajaxStop boleh digunakan sebagai fungsi pemerhatian, dan kita boleh menggunakan fungsi panggil balik fungsi pemerhatian untuk melaksanakan pemprosesan yang sepadan.

Fungsi panggil balik ajaxStart dicetuskan apabila permintaan Ajax bermula dan tiada penghantaran lain telah dibuat.
Apabila permintaan aktif terakhir ditamatkan, fungsi panggil balik yang didaftarkan melalui ajaxStop dilaksanakan.
Oleh kerana fungsi pemerhatian adalah global, ia perlu dipanggil menggunakan $(document). Kami menguji kedua-dua fungsi dengan menggunakan kaedah Ajax untuk mendapatkan contoh imej:
Halaman semasa ialah:

<div></div>
<button>load</button>
Salin selepas log masuk

Kandungan test.html dalam direktori yang sama ialah:

<img src="avatar.jpg" />
Salin selepas log masuk

Ingin memuatkan imej selepas mengklik butang:

 $('button').click(function() {
  $('div').load('test.html');
 });
Salin selepas log masuk

Pada ketika ini kita boleh menggunakan fungsi ajaxStart dan ajaxStop untuk menambah gesaan:

 $(document).ajaxStart(function() {//
  alert('load a picture');
 }).ajaxStop(function() {
  alert('show a picture');
 });
 $('button').click(function() {
  $('div').load('test.html');
 });
Salin selepas log masuk

Selepas mengklik butang pada masa ini, ia akan menggesa memuatkan gambar sebelum imej dimuatkan dan menunjukkan gambar selepas dimuatkan.

Ralat pengendalian

Kaedah yang paling biasa digunakan ialah kaedah ajaxError global Ambil contoh di atas sebagai contoh Jika kami menghantar permintaan data ke halaman yang tidak wujud:

 $(document).ajaxError(function() {//
  alert('load failed!');
 });
 $('button').click(function() {
  $('div').load('noexsited.html');
 });
Salin selepas log masuk

Selepas mengklik butang pada masa ini:

Untuk kaedah bukan beban, anda juga boleh menggunakan kaedah gagal untuk pemprosesan gabungan:

 $('button').click(function() {
  $.get('noexsited.html', function(data) {

  }).fail(function(jqXHR) {
   alert('status is ' + jqXHR.status);
  });
 });
Salin selepas log masuk

JSONP

JSONP ialah JSON dengan pelapik, JSON berlapik, yang menggunakan teg untuk mendapatkan fail Javascript merentas domain, jadi data JSON boleh diperoleh merentas domain.
Format JSONP adalah untuk membungkus fail JSON standard dalam sepasang kurungan, yang didahului oleh rentetan arbitrari. Rentetan ini, dipanggil P, ditentukan oleh pelanggan yang meminta data.
Butang yang sama seperti dalam contoh di atas, mula-mula kita tetapkan kandungan halaman domain luaran otherdomain.com/index.php kepada:

<&#63;php
$data = '{ "name": "stephenlee", "sex": "male" }';
echo $_GET['callback'] .'('. $data .')';
Salin selepas log masuk

Kami menggunakan pemegang tempat khas untuk mencapai pemerolehan merentas domain data JSON:

 $('button').click(function() {
  $.getJSON('otherdomain.com/index.php&#63;callback=&#63;', function(data) {
   console.log(data);
  });
 });
Salin selepas log masuk


Pemerolehan data berjaya.

Label berkaitan:
sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan