2010-06-01 41 views

Trả lời

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

Kể từ text() được giá trị, và text("someValue") đặt giá trị, bạn chỉ cần đặt một bên kia.

Sẽ là tương đương với việc thực hiện:

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

EDIT:

Tôi hy vọng tôi hiểu câu hỏi một cách chính xác. Tôi giả sử $mylabel là tham chiếu đến một phần tử DOM trong đối tượng jQuery và chuỗi nằm trong nội dung của phần tử.

Nếu chuỗi nằm trong một số biến khác không phải là một phần của DOM, thì bạn có thể muốn gọi hàm .replace() đối với biến đó trước bạn chèn nó vào DOM.

Như thế này:

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

hoặc một phiên bản tiết hơn:

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

yip $ mylabel là tham khảo một phần tử DOM. Tôi đã thử điều này và nó hoạt động hoàn hảo. Cảm ơn bạn đã giúp đỡ. –

+0

Bạn được chào đón. Mừng vì tôi có thể giúp. : o) – user113716

+6

Chỉ trong trường hợp bạn muốn xóa tất cả các lần xuất hiện của chuỗi, thay vì chỉ là chuỗi đầu tiên, bạn có thể sử dụng: $ mylabel.text(). replace (/ -/g, ''); – leticia

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

nếu bạn đã làm nó theo cách đó biến string hiện nắm giữ "123456"

bạn cũng có thể (tôi đoán cách tốt hơn) làm điều này ...

$mylabel.text("-123456"); 
$mylabel.text(function(i,v){ 
    return v.replace('-',''); 
}); 
5

Nếu bạn muốn loại bỏ tất cả - bạn có thể sử dụng:

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

Nếu bạn đang xóa toàn bộ một khoảng thời gian: https://stackoverflow.com/questions/2390789/how-to-replace-all-dots-in-a-string-using-javascript –

Các vấn đề liên quan