Problème de caractères en JavaScript
Résolu
LYXAIM
Messages postés
7
Statut
Membre
-
LYXAIM Messages postés 7 Statut Membre -
LYXAIM Messages postés 7 Statut Membre -
Bonjour,
Je suis actuellement entrain de créer un site avec un système de recherche.
Sauf que si un utilisateur met un "&", "+", etc... le code ne marche plus.
J'aimerais donc savoir si il existe un genre de htmlspecialchars() mais en JS.
Merci d'avance.
Je suis actuellement entrain de créer un site avec un système de recherche.
InputSearch.oninput = function(){
var Val = InputSearch.value;
$('#contentpage').load('all.php?q=' + Val);
}
Sauf que si un utilisateur met un "&", "+", etc... le code ne marche plus.
J'aimerais donc savoir si il existe un genre de htmlspecialchars() mais en JS.
Merci d'avance.
2 réponses
-
Bonjour,
En JS, tu pourrais simuler la fonction htmlspecialchars par une fonction du genrefunction escapeHtml(text) { var map = { '&': '&', '<': '<', '>': '>', '"': '"', "'": ''' }; return text.replace(/[&<>"']/g, function(m) { return map[m]; }); }
Mais je pense qu'il serait plus "propre" de changer ta méthode .load() par une appel ajax en post.var Val = InputSearch.value; $.ajax({ cache: false, url: "all.php", type: "POST", data: { q: Val } }).done(function (data) { $('#contentpage').html(data); }).fail(function (jqXHR, textStatus) { console.log("Erreur Ajax",jqXHR,textStatus); });
bien entendu, dans ton fichier all.php .. il faudra modifier ta récupération de variable
au lieu d'utiliser le $_GET , il faudra utiliser le $_POST
-