Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mengekodkan Ampersand dengan betul dalam JavaScript untuk HTML?

Bagaimana untuk Mengekodkan Ampersand dengan betul dalam JavaScript untuk HTML?

Mary-Kate Olsen
Lepaskan: 2024-12-20 17:09:16
asal
971 orang telah melayarinya

How to Properly Encode Ampersands in JavaScript for HTML?

Pengekodan Ampersand dalam JavaScript

Anda menghadapi isu di mana pengekodan HTML hilang apabila mendapatkan semula nilai daripada medan input tersembunyi. Nilai, yang dikodkan dalam medan input, muncul dalam kotak teks tanpa pengekodan yang betul. Ini menyebabkan aksara '&' ditafsirkan secara literal, bukannya sebagai entiti HTML.

Untuk menyelesaikan isu ini, anda boleh menggunakan perpustakaan JavaScript atau kaedah jQuery untuk mengekod rentetan.

DOMParser API

  • Buat DOMParser baharu instance.
  • Gunakan kaedah parseFromString untuk menghuraikan rentetan HTML dan mencipta objek Dokumen baharu.
  • Dapatkan semula teks dalaman dokumen yang dibuat, yang akan dikodkan HTML.
const parser = new DOMParser();
const encodedText = parser.parseFromString('<p>chalk &amp; cheese</p>', 'text/html').documentElement.textContent;
Salin selepas log masuk

JavaScript tersuai Fungsi

function htmlEncode(value) {
  // Create a temporary textarea element
  const textarea = document.createElement('textarea');
  textarea.textContent = value;
  const encodedValue = textarea.value;

  // Remove the created textarea element
  textarea.remove();

  return encodedValue;
}
Salin selepas log masuk

Contoh Penggunaan

const hiddenValue = $('#hiddenId').attr('value');
const encodedValue = htmlEncode(hiddenValue);
$('#textboxId').val(encodedValue);
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Mengekodkan Ampersand dengan betul dalam JavaScript untuk HTML?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan