Javascript et expressions régulières
Rémi
-
Gihef Messages postés 5165 Statut Contributeur -
Gihef Messages postés 5165 Statut Contributeur -
Salut!
Je suis en train de dévelloper un site internet ou je demande sur une page à l'utilisateur de saisir un texte dans un élément textarea, pour ensuite l'afficher à l'écran.
Le problème c'est que si l'utilisateur est un malin, il peut saisir des balises html dans la zone de texte et donc faire n'importe quoi ce qui signifie fusiller mon affichage...
En conséquence, je cherche un moyen de détecter les balises html présentes dans ma variable (qui correspond au contenu du textarea) et les remplacer par... rien du tout :)!
J'ai pensé aux expressions régulières en jvs mais je les maitrises mal.
Globalement ca revient a rechercher tout ce qui commence par < et fini par > (espaces slashs et guillemets compris).
Quelqu'un a une idée?
Je suis en train de dévelloper un site internet ou je demande sur une page à l'utilisateur de saisir un texte dans un élément textarea, pour ensuite l'afficher à l'écran.
Le problème c'est que si l'utilisateur est un malin, il peut saisir des balises html dans la zone de texte et donc faire n'importe quoi ce qui signifie fusiller mon affichage...
En conséquence, je cherche un moyen de détecter les balises html présentes dans ma variable (qui correspond au contenu du textarea) et les remplacer par... rien du tout :)!
J'ai pensé aux expressions régulières en jvs mais je les maitrises mal.
Globalement ca revient a rechercher tout ce qui commence par < et fini par > (espaces slashs et guillemets compris).
Quelqu'un a une idée?
A voir également:
- Javascript et expressions régulières
- Telecharger javascript - Télécharger - Langages
- A javascript error occurred in the main process - Forum Handicap / Accessibilté
- Afficher un tableau javascript en html ✓ - Forum Javascript
- Javascript arrondi - Forum Javascript
- Javascript arrondi après la virgule ✓ - Forum Windows
6 réponses
Bonjour,
Est-ce qu'un traitement de “<” en “<” par https://www.toutjavascript.com/reference/ref-string.replace.php ne serait pas suffisant ?
Sinon, comme Recherche, j'utiliserais ça :
En Javascript ???
+ http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.5/guide/regexp.html
Est-ce qu'un traitement de “<” en “<” par https://www.toutjavascript.com/reference/ref-string.replace.php ne serait pas suffisant ?
Sinon, comme Recherche, j'utiliserais ça :
<[\w\W]+?>
En Javascript ???
+ http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.5/guide/regexp.html
Il faut surtout contrôler du côté serveur (Php, Asp, autre ...), car il faut penser que le JS peut être utilisé comme une aide pour l'utilisateur, mais ne doit pas servir au contrôle final.
Non ça suffirais pas, parce que je l'affiche le texte et je voudrais éviter d'avoir du <img src=""... par exemple à l'affichage.
Sinon j'ai essayé ta recherche mais ca a pas l'air de marcher, voila le code.
var texte=document.forms["ajout_art"].elements['art'].value;
var reg=new RegExp("<[\w\W]+?>", "g");
texte.replace(reg,"BALISE HTML");
alert(texte);
Si je tape <a href="..."></a> dans la zone de texte, l'alert m'affiche <a href="..."></a>...
Ya une erreur dans le code ou c'est la recherche qui donne rien?
Sinon ouais je ferais la même chose derière en php, mais la c'est pour un affichage temporaire dans un popup (apercu), donc pas de validation de formulaire et pas de php :).
Sinon j'ai essayé ta recherche mais ca a pas l'air de marcher, voila le code.
var texte=document.forms["ajout_art"].elements['art'].value;
var reg=new RegExp("<[\w\W]+?>", "g");
texte.replace(reg,"BALISE HTML");
alert(texte);
Si je tape <a href="..."></a> dans la zone de texte, l'alert m'affiche <a href="..."></a>...
Ya une erreur dans le code ou c'est la recherche qui donne rien?
Sinon ouais je ferais la même chose derière en php, mais la c'est pour un affichage temporaire dans un popup (apercu), donc pas de validation de formulaire et pas de php :).
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai tenté de faire fonctionner quelque chose de similaire. Sans succès (js n'est pas mon ami).
Essaye ailleurs ?
Essaye ailleurs ?