Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mengekalkan Pengekodan HTML Apabila Mendapatkan Nilai daripada Medan Input Tersembunyi dalam JavaScript?

Bagaimanakah Saya Boleh Mengekalkan Pengekodan HTML Apabila Mendapatkan Nilai daripada Medan Input Tersembunyi dalam JavaScript?

Linda Hamilton
Lepaskan: 2025-01-01 08:32:10
asal
731 orang telah melayarinya

How Can I Preserve HTML Encoding When Retrieving Values from Hidden Input Fields in JavaScript?

Memelihara Pengekodan HTML Semasa Membaca Atribut Medan Tersembunyi

Apabila mengekstrak nilai daripada medan input tersembunyi yang dikodkan, JavaScript sering kehilangan pengekodan semasa proses . Ini bermasalah apabila niatnya adalah untuk mengekalkan aksara ampersand (&) literal.

Penyelesaian:

Untuk menangani isu ini, JavaScript menyediakan kaedah yang boleh mengekod HTML rentetan. Salah satu kaedah tersebut ialah:

function htmlEncode(value) {
  // Create an in-memory textarea element and set its inner text.
  // Text within a textarea is automatically encoded.
  return $('<textarea/>').text(value).html();
}
Salin selepas log masuk

Penggunaan:

Fungsi ini boleh dimasukkan ke dalam kod anda untuk memastikan pengekodan HTML dikekalkan apabila membaca dari medan tersembunyi:

var encodedValue = $('#hiddenId').attr('value');
var decodedValue = htmlDecode(encodedValue);
Salin selepas log masuk

Sebagai alternatif, perpustakaan jQuery menyediakan kaedah yang dipanggil htmlDecode() yang boleh membalikkan pengekodan:

// Decoding the encoded value
var decodedValue = decodedValue = $('<div/>').html(encodedValue).text();
Salin selepas log masuk

Contoh:

Pertimbangkan medan tersembunyi:

<input>
Salin selepas log masuk

Menggunakan fungsi htmlEncode():

var encodedValue = $('#hiddenId').attr('value');
console.log(encodedValue); // Outputs: chalk &amp; cheese
Salin selepas log masuk

Menggunakan htmlDecode() kaedah:

var decodedValue = $('<div/>').html(encodedValue).text();
console.log(decodedValue); // Outputs: chalk &cheese
Salin selepas log masuk

Dalam kedua-dua kes, pengekodan HTML asal dikekalkan semasa proses pengekstrakan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengekalkan Pengekodan HTML Apabila Mendapatkan Nilai daripada Medan Input Tersembunyi dalam JavaScript?. 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