Rumah  >  Artikel  >  hujung hadapan web  >  format pengekodan url penukaran rentetan jquery

format pengekodan url penukaran rentetan jquery

PHPz
PHPzasal
2023-05-12 14:55:081316semak imbas

Dalam pembangunan bahagian hadapan, kita selalunya perlu menukar rentetan tertentu ke dalam format yang dikodkan URL. Pengekodan URL adalah untuk menukar beberapa aksara khas kepada kod ASCII yang sepadan supaya ia boleh dihantar dalam URL. Walaupun JavaScript menyediakan kaedah encodeURI dan encodeURIComponent untuk pengekodan URL, dalam beberapa kes, kami juga perlu menggunakan jQuery untuk melaksanakan proses ini. Artikel ini menerangkan cara menggunakan jQuery untuk menukar rentetan kepada format yang dikodkan URL.

Apakah pengekodan URL?

Pengekodan URL ialah kaedah menukar rentetan kepada format selamat URL untuk memudahkan penghantaran URL. Pengekodan URL menukar beberapa huruf, nombor dan simbol kepada persamaan ASCII mereka, didahului dengan tanda peratus. Contohnya, kod ASCII untuk ruang ialah 32, jadi ia ditukar kepada %20 dalam pengekodan URL.

Senario penggunaan biasa untuk pengekodan URL termasuk:

  • Melalukan aksara khas dalam parameter URL, seperti &, =, dsb.
  • Apabila menghantar data dalam permintaan AJAX, URL-kodkan data untuk penghantaran yang lebih mudah.

Gunakan jQuery untuk melaksanakan pengekodan URL

Dalam jQuery, kita boleh menggunakan kaedah $.param() untuk menyerikan objek ke dalam urutan pengekodan URL (ini juga lalai jQuery dalam permintaan AJAX kaedah bersiri yang digunakan). Tetapi bagaimana jika kita perlu mengekod URL rentetan? Pada masa ini kita boleh menggunakan kaedah encodeURIComponent() untuk mencapainya, iaitu sama seperti dalam JavaScript. Contohnya, kod berikut menukar rentetan Hello, world! ke dalam format berkod URL:

var encoded = encodeURIComponent('Hello, world!');
console.log(encoded); // "Hello%2C%20world%21"

Dalam kod di atas, kaedah encodeURIComponent() menukar koma dan ruang kepada %2C dan %20.

Kaedah pengekodan URL merangkum

Sekarang kita tahu cara menggunakan kaedah encodeURIComponent() untuk melaksanakan pengekodan URL dalam jQuery, kita boleh merangkumnya ke dalam fungsi untuk mudah digunakan semula dalam kod. Contohnya, kod berikut:

function urlEncode(str) {
  return encodeURIComponent(str)
    .replace(/[!'()*]/g, function(c) {
      return '%' + c.charCodeAt(0).toString(16);
    });
}

Dalam kod di atas, kami mula-mula menggunakan kaedah encodeURIComponent() untuk mengekod URL rentetan, dan kemudian menggunakan ungkapan biasa untuk menukar beberapa aksara yang tiada dalam spesifikasi pengekodan URL ke dalam kod ASCII mereka. Contohnya, !'()* aksara ditukar kepada %21%27%28%29%2A.

Ringkasan

Dalam artikel ini, kami memperkenalkan konsep dan senario penggunaan pengekodan URL, dan menunjukkan cara menggunakan kaedah $.param() jQuery dan kaedah encodeURIComponent() untuk melaksanakan pengekodan URL. Kami juga merangkum kaedah encodeURIComponent() ke dalam fungsi untuk memudahkan penggunaan dalam pembangunan sebenar. Saya harap artikel ini akan membantu semua orang memahami dan menggunakan pengekodan URL.

Atas ialah kandungan terperinci format pengekodan url penukaran rentetan jquery. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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