2012-08-04 21 views
21

Tôi có một mảng với các đối tượng bên trong của nó, một vài trong số các đối tượng chứa một dấu gạch dưới trong chuỗiJavascript thay thế nhấn mạnh với không gian

Ví dụ

{"name": "My_name"} 

nhưng tôi đang gọi hàm tên trong nhiều vị trí, một vị trí như vậy nằm trong thẻ hình ảnh nơi dấu gạch dưới là cần thiết, sử dụng javascript hoặc jquery tôi muốn chọn một div nhất định có tên trong đó và thay thế gạch dưới bằng một khoảng trắng

Ví dụ

<div> 
<div class="name"> 
    My_name 
</div> 
<img src="My_name.jpg"/> 
</div> 

Trong div.name Tôi muốn nó nói tên của tôi thay vì MY_NAME

Tôi hiện đang sử dụng jQuery, và jQuery UI cho dự án của tôi

+0

[Bạn đã thử gì] (http://whathaveyoutried.com)? Bạn có muốn thay đổi đối tượng (ví dụ đầu tiên) hoặc DOM được tạo (ví dụ thứ hai) không? – Bergi

Trả lời

49

Bạn có thể thay thế tất cả dấu gạch trong một chuỗi với một không gian như vậy:

str.replace(/_/g, ' '); 

vì vậy, chỉ làm điều đó trước khi nội dung được đưa vào Nếu bạn cần phải thực hiện việc thay thế sau đó, vòng lặp sử dụng each:.

$('.name').each(function() { 
    var $this = $(this); 

    $this.text($this.text().replace(/_/g, ' ')); 
}); 
+0

Cảm ơn bạn, mọi câu trả lời khác tôi thấy không giúp tôi chút nào, cảm ơn vì đã cho tôi giải pháp của tôi :) Tôi sẽ chấp nhận câu trả lời này chỉ trong một phút – PhazingAzrael

+0

lưu ý rằng không có dấu ngoặc kép đơn hoặc kép phần đầu tiên được viết bằng regex –

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