Mam ciąg „-123445”. Czy można usunąć znak „-” z ciągu?
Próbowałem następujących rzeczy, ale bezskutecznie:
$mylabel.text("-123456");
$mylabel.text().replace('-', '');
$mylabel.text( $mylabel.text().replace('-', '') );
Ponieważ text()
pobiera wartość i text( "someValue" )
ustawia wartość, po prostu umieszczasz jeden wewnątrz drugiego.
Byłoby to odpowiednikiem zrobienia:
var newValue = $mylabel.text().replace('-', '');
$mylabel.text( newValue );
EDYTOWAĆ:
Mam nadzieję, że dobrze zrozumiałem pytanie. Zakładam, że $mylabel
odwołuje się do elementu DOM w obiekcie jQuery, a ciąg znaków znajduje się w treści elementu.
Jeśli ciąg znajduje się w innej zmiennej, która nie jest częścią DOM, prawdopodobnie będziesz chciał wywołać .replace()
funkcję względem tej zmiennej przed wstawieniem jej do DOM.
Lubię to:
var someVariable = "-123456";
$mylabel.text( someVariable.replace('-', '') );
lub bardziej szczegółowa wersja:
var someVariable = "-123456";
someVariable = someVariable.replace('-', '');
$mylabel.text( someVariable );
Jeśli chcesz usunąć wszystko,
-
co możesz użyć:.replace(new RegExp('-', 'g'),"")
źródło
$mylabel.text("-123456"); var string = $mylabel.text().replace('-', '');
jeśli zrobiłeś to w ten sposób, zmienna
string
zachowuje się teraz"123456"
możesz też (chyba lepiej) to zrobić ...
$mylabel.text("-123456"); $mylabel.text(function(i,v){ return v.replace('-',''); });
źródło