Maison >interface Web >js tutoriel >Comment puis-je conserver le codage HTML lors de la récupération de valeurs à partir de champs de saisie masqués en JavaScript ?

Comment puis-je conserver le codage HTML lors de la récupération de valeurs à partir de champs de saisie masqués en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-01 08:32:10732parcourir

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

Préserver l'encodage HTML lors de la lecture de l'attribut de champ caché

Lors de l'extraction de valeurs à partir de champs de saisie masqués encodés, JavaScript perd souvent l'encodage au cours du processus . Ceci est problématique lorsque l'intention est de conserver les caractères littéraux esperluette (&).

Solution :

Pour résoudre ce problème, JavaScript fournit des méthodes qui peuvent encoder en HTML cordes. L'une de ces méthodes est :

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();
}

Utilisation :

Cette fonction peut être intégrée à votre code pour garantir que le codage HTML est conservé lors de la lecture à partir de champs masqués :

var encodedValue = $('#hiddenId').attr('value');
var decodedValue = htmlDecode(encodedValue);

Alternativement, la bibliothèque jQuery fournit une méthode appelée htmlDecode() qui peut inverser le encodage :

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

Exemple :

Considérez le champ caché :

<input>

Utilisation de la fonction htmlEncode() :

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

Utilisation de htmlDecode() méthode :

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

Dans les deux cas, l'encodage HTML d'origine est conservé pendant le processus d'extraction.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn