11485 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous,
Peut-être que ce que je demande à JS est vraiment élémentaire, mais je n'y arrive pas.
Problème : Je reçois un texte d'une <form HTML dans une fonction JS.
Jusque là, tout marche bien, mais ...
Mais tous les espaces du contenu de ma variable sont remplacés par des "+" !
Et je ne suis pas fichu de les remplacer par des espaces.
J'ai essayé plusieurs possibilité de REPLACE, mais au mieux j'arrive à remplacer la première occurrence ...
Qui a une idée ?
Merci d'avance et salutations cordiales
Horace
Bonjour,
Je ne sais pas d’où vient ce remplacement, mais pour ce qui est de replace, ça devrait mieux fonctionner avec
texte.replace(/\+/g, " ")

g indique qu’il faut remplacer toutes les occurrences.
Administrateur
Bonjour,

j'hésiterais à coller une expression régulière sur une valeur tout droit issue d'un utilisateur (pas que pour des raisons de sécu mais aussi de perf s'il veut mettre à genou ton serveur avec un texte nécessitant un maximum de temps de traitement, bref ça se nettoie avant).
Variante (c/c de Stack Overflow) :
// Replaces all spaces with _ without regex. Functional way.
var withSpaces = userText.split('+').join(' ');  // Returns: Some_text_with_spaces
Merci à tous !
Ca marche !!!
J'ai du m'y prendre en plusieurs coups, pour arriver à la bonne solution

		var temp = parameters[0].split("=");
		l = unescape(temp[1]);
		var ti = l.replace(/\+/g,' ')
.
.
.
		document.getElementById("titre").innerHTML = ti;
 

C'est parfait et je vous remercie tous
Horace
Meilleure solution
Bonsoir,
Juste une rallonge ...
Je suis bien incapable de dire eui ou quoi à rajouté les '+' à la place des ' ' !
Qui a une idée !
Ce n'est vraiment pas important, mais ... quelque part, dans l'avenir, il peut être bon de le savoir !
Amitiés
H.