jQuery supprimant le caractère '-' de la chaîne


93

J'ai une chaîne "-123445". Est-il possible de supprimer le caractère «-» de la chaîne?

J'ai essayé ce qui suit mais en vain:

$mylabel.text("-123456");
$mylabel.text().replace('-', '');

Réponses:


168
$mylabel.text( $mylabel.text().replace('-', '') );

Depuis text()obtient la valeur et text( "someValue" )définit la valeur, il suffit de placer l'un dans l'autre.

Serait l'équivalent de faire:

var newValue = $mylabel.text().replace('-', '');
$mylabel.text( newValue );

ÉDITER:

J'espère avoir bien compris la question. je suppose$mylabel fait référence à un élément DOM dans un objet jQuery et que la chaîne se trouve dans le contenu de l'élément.

Si la chaîne se trouve dans une autre variable ne faisant pas partie du DOM, vous voudrez probablement appeler la .replace()fonction sur cette variable avant de l' insérer dans le DOM.

Comme ça:

var someVariable = "-123456";
$mylabel.text( someVariable.replace('-', '') );

ou une version plus détaillée:

var someVariable = "-123456";
someVariable = someVariable.replace('-', '');
$mylabel.text( someVariable );

yip $ mylabel fait référence à un élément DOM. J'ai essayé cela et cela fonctionne parfaitement. Merci de votre aide.
Riain McAtamney

9
Juste au cas où vous voudriez supprimer toutes les occurrences d'une chaîne, au lieu de juste la première, vous pouvez utiliser: $ mylabel.text (). Replace (/ - / g, '');
leticia


8
$mylabel.text("-123456");
var string = $mylabel.text().replace('-', '');

si vous l'avez fait de cette façon, la variable stringtient maintenant"123456"

vous pouvez aussi (je suppose que la meilleure façon) le faire ...

$mylabel.text("-123456");
$mylabel.text(function(i,v){
   return v.replace('-','');
});
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.