jQuery removing '-' character from string

292,174

Solution 1

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

Since text() gets the value, and text( "someValue" ) sets the value, you just place one inside the other.

Would be the equivalent of doing:

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

EDIT:

I hope I understood the question correctly. I'm assuming $mylabel is referencing a DOM element in a jQuery object, and the string is in the content of the element.

If the string is in some other variable not part of the DOM, then you would likely want to call the .replace() function against that variable before you insert it into the DOM.

Like this:

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

or a more verbose version:

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

Solution 2

If you want to remove all - you can use:

.replace(new RegExp('-', 'g'),"")

Solution 3

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

if you have done it that way variable string now holds "123456"

you can also (i guess the better way) do this...

$mylabel.text("-123456");
$mylabel.text(function(i,v){
   return v.replace('-','');
});
Share:
292,174
Riain McAtamney
Author by

Riain McAtamney

I work mostly on the web but dabble in desktop land too. All on the .Net stack.

Updated on December 12, 2020

Comments

  • Riain McAtamney
    Riain McAtamney over 3 years

    I have a string "-123445". Is it possible to remove the '-' character from the string?

    I have tried the following but to no avail:

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