Voici ma fonction:
CSS_Left = '450px'; CSS_Left.replace('px', ''); alert(CSS_Left);
Il retourne '450px'
Voici un exemple:
Http://jsfiddle.net/D2Mgb/
Je veux qu'il remplisse «px» par rien.
En JavaScript, les chaînes sont immuables.
Tous les types sauf les objets définissent des valeurs immuables. Plus précisément, les chaînes sont immuables (contrairement à C par exemple).
Donc, str.replace
renvoie une nouvelle chaîne. Essayez ceci à la place:
CSS_Left = CSS_Left.replace('px', '');
Ou si vous ne souhaitez pas écraser la chaîne d'origine, il suffit de la faire dans l'appel d' alert
alert(CSS_Left.replace('px', ''));
Il vaut la peine de noter que .replace
peut aussi prendre un regexp. Bien qu'il ne soit pas nécessaire dans votre cas, vous pourriez faire quelque chose comme ça pour obtenir le même résultat
CSS_Left = CSS_left.replace(/px$/, '');
Parce que .replace()
renvoie une nouvelle chaîne. Si vous souhaitez mettre à jour l'ancienne chaîne, vous devez écrire: CSS_Left = CSS_Left.replace('px', '');
Je ne suis pas sûr, mais la fonction replace () crée une nouvelle variable. Essaye ça :
var CSS_Left = '450px'; CSS_Left = CSS_Left.replace('px', ''); alert(CSS_Left);
La sortie de l'appel de remplacement doit être réaffectée à CSS_Left