CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Javascript live preview du tag <code>

ShiningDuck
ShiningDuck
Niveau 5
28 juin 2015 à 21:36:09

Bien le bonjour,
j'ai un site sur lequel on peut poster des news etc. et dans ces news là ont peut insérer le tag html afin de pouvoir mettre du code. Le problème c'est qu'il y a une live preview en même temps que l'on écrit cette news et lorsque l'on met du code html dans ces balises <code>, ce contenu là est rendu sous forme de html sur la preview; ce qui n'est pas souhaitable. J'ai déjà trouvé une fonction qui permet de régler ça en PHP au moment de submit la news : <code> $search = "~<code>(.*?)~is";
preg_match_all($search, $contenu, $matches);
foreach($matches[1] as $match){
$replace = htmlspecialchars($match);
$contenu = str_replace($match, $replace, $contenu);
}
</code>

Mais je vous avoue que je ne trouve pas comment faire ça dynamiquement en Javascript.
De l'aide serait très appréciable :)
Merci d'avance !

Darkandgel
Darkandgel
Niveau 10
28 juin 2015 à 23:58:52

Tu fais un replace de "<" par < et ">" par > ?

ou alors j'ai pas compris la question

ShiningDuck
ShiningDuck
Niveau 5
29 juin 2015 à 09:24:46

Pas vraiment car il faudrait en fait un équivalent de htmlspecialchars mais qui ne s'applique qu'entre les balises <code> car on peut également utiliser d'autres balises comme les liens que je ne veux pas supprimer

Darkandgel
Darkandgel
Niveau 10
29 juin 2015 à 09:57:50

Merde, j'avais pas relu mon message, j'avais pas vu que ce que j'avais mis avait été interpreté.

Je voulais dire :

Tu fais un replace de "<" par & lt; et ">" par & gt; (sans les espaces)
Et si tu ne veux que les balises code, tu replace et par & lt;code& gt; et & lt;/code& gt;

ShiningDuck
ShiningDuck
Niveau 5
29 juin 2015 à 10:17:41

C'est pas ça le problème, j'aimerai faire un htmlspecialchars de tout ce qu'il y a entre les balises <code>. Et j'aimerai que ça se fasse automatiquement au fur et à mesure que j'écris.
Imaginons que par exemple j'ai des balises code avec plein de code html dedans, il faudrait en fait que les < et > soient effectivement remplacés par & lt et & gt dans toutes les balises qui se trouvent entre les balises <code>.

Darkandgel
Darkandgel
Niveau 10
29 juin 2015 à 12:26:41

Ben dans ce cas une regex qui remplace tout les < et > entre les balises ...

ShiningDuck
ShiningDuck
Niveau 5
29 juin 2015 à 12:32:21

Et donc quel serait ce regex ?

deepblue
deepblue
Niveau 16
29 juin 2015 à 13:20:11

https://gist.deblan.org/en/view/559129dc6cfbe

ShiningDuck
ShiningDuck
Niveau 5
29 juin 2015 à 14:05:29

Ca n'a pas l'air de fonctionner ...
https://image.noelshack.com/fichiers/2015/27/1435579488-marchepas.png

deepblue
deepblue
Niveau 16
29 juin 2015 à 16:20:43

https://gist.deblan.org/en/view/5591540e6e87f

Ça semble chier dans la colle quand il y a des retours à la ligne. Je n'ai pas le temps de faire plus pour le moment.

ShiningDuck
ShiningDuck
Niveau 5
30 juin 2015 à 10:38:30

Effectivement ça ne fonctionne pas avec les retours à la ligne.

deepblue
deepblue
Niveau 16
30 juin 2015 à 18:37:02

https://gist.deblan.org/eg/en/revs/5591540e6e87f#diff-2

ShiningDuck
ShiningDuck
Niveau 5
30 juin 2015 à 19:40:40

Ok alors ça fonctionne, mais si le texte fait beaucoup de caractères la page plante complètement. :/

deepblue
deepblue
Niveau 16
01 juillet 2015 à 09:19:16

Il faudrait analyser ce qui prend du temps/plante dans le script.

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment