Bonjour,
Pour supprimer le codage des espaces, unescape() étant déprécié, il faut désormais utiliser decodeURI() ou decodeURIComponent()
Mais s'il y a des caractères accentués cette nouvelle fonction pose problème.
Je n'ai pas réussi à trouver comment "coder" la fonction replace !
Si vous pouvez me mettre sur une piste voire autre solution, je suis preneur !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 txt = txt.replace("%20"/g," "); // Ne marche pas
Pour information encodeURIComponent() posant le même problème , j'ai trouvé la solution suivante pour l'opération inverse sur les URL, à savoir encoder les espaces par %20 par lorsque le texte contient des caractéres accentués.
Espérons que cette solution soit pérenne !
Bien cordialement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 // Pour formater un texte contenant des caractères accentués en URL, autrement que par txt = encodeURIComponent(txt) // Utilisation de txt = txt.replace(/ /g,"%20"); // Pour remplacer uniquement les espaces éventuels sans toucher aux caractères accentués
Partager