Maison >interface Web >js tutoriel >Comment puis-je conserver le codage HTML lors de la lecture à partir de champs de saisie en JavaScript ?
Préserver l'encodage HTML lors de la lecture à partir du champ de saisie
Lors de l'extraction de valeurs de champs masqués à l'aide de JavaScript, il est courant de rencontrer des situations où l'encodage HTML est perdu, ce qui entraîne des valeurs de chaîne indésirables. Dans de tels cas, il devient essentiel de conserver le format encodé d'origine.
Heureusement, plusieurs approches peuvent être utilisées pour encoder des chaînes HTML. Une méthode efficace consiste à exploiter l'API DOMParser, offrant une solution plus moderne et plus fiable :
const encodedValue = new DOMParser().parseFromString(value, "text/html").body.textContent;
Alternativement, si une compatibilité existante est souhaitée, les fonctions jQuery suivantes offrent des fonctionnalités similaires :
function htmlEncode(value) { return $("<textarea>").text(value).html(); } function htmlDecode(value) { return $("<textarea>").html(value).text(); }
Ces fonctions utilisent un élément textarea caché pour manipuler la chaîne. En définissant son textContent sur la valeur souhaitée, le navigateur encode automatiquement le contenu en HTML. Par la suite, le HTML encodé peut être récupéré via la propriété innerHTML.
Pour le décodage HTML, le processus est inversé, où le HTML encodé est défini comme innerHTML de la zone de texte et le textContent décodé est obtenu.
En employant l'une de ces techniques, il est possible d'extraire les valeurs codées en HTML des champs de saisie tout en conservant le formatage d'origine, garantissant ainsi une précision représentation sous forme de chaîne.
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!