Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menyahlepaskan Entiti HTML dalam JavaScript?
Apabila mendapatkan semula rentetan XML-RPC yang mengandungi entiti HTML, JavaScript memasukkannya secara literal ke dalam HTML, menghalang yang betul rendering. Teks dipaparkan sebagai rentetan dan bukannya elemen HTML yang dimaksudkan.
[DOMParser]
Kaedah pilihan untuk melepaskan entiti HTML dalam JavaScript ialah menggunakan DOMParser. DOMParser ialah alat yang disokong pelayar yang menghuraikan rentetan HTML dan mengekstrak kandungannya. Dengan menggunakan DOMParser, anda boleh menukar entiti yang dilarikan dengan selamat dan berkesan kepada aksara yang sepadan.
Fungsi berikut menggunakan DOMParser untuk melepaskan entiti HTML dalam JavaScript:
function htmlDecode(input) { var doc = new DOMParser().parseFromString(input, "text/html"); return doc.documentElement.textContent; }
Untuk menunjukkan fungsi, kita boleh melepaskan rentetan HTML yang mengandungi entiti imej:
console.log( htmlDecode("<img src='myimage.jpg'>") ) // "<img src='myimage.jpg'>"
Berhati-hati terhadap kemungkinan Penskripan Merentas Tapak ( XSS) kelemahan jika rentetan input tidak dipercayai. Entiti HTML yang dilepaskan boleh menyembunyikan kod JavaScript berniat jahat yang mungkin dilaksanakan apabila rentetan dihuraikan.
Sentiasa sahkan input pengguna sebelum tidak melarikan diri untuk menghalang pelakon yang berniat jahat daripada mengeksploitasi kelemahan.
Atas ialah kandungan terperinci Bagaimana untuk Menyahlepaskan Entiti HTML dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!