2012-08-04 29 views
21

Ho un array con gli oggetti all'interno di esso, alcuni degli oggetti contengono una sottolineatura nella stringaJavascript sostituire sottolineare con spazio

Esempio

{"name": "My_name"} 

ma sto chiamando la funzione nome più posti, uno di questi luoghi è in un tag di immagine in cui è necessaria la sottolineatura, utilizzando JavaScript o jQuery voglio selezionare un certo div con il nome in esso e sostituire la sottolineatura con uno spazio

Esempio

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

Nel div.name voglio che dire il mio nome, invece di my_name

Attualmente sto usando jQuery e jQuery UI per il mio progetto

+0

[Cosa hai provato] (http://whathaveyoutried.com)? Vuoi cambiare l'oggetto (primo esempio) o il DOM generato (secondo esempio)? – Bergi

risposta

49

è possibile sostituire tutte le sottolineature in una stringa con uno spazio in questo modo:

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

quindi, solo farlo prima che il contenuto è messo in Se è necessario eseguire la sostituzione dopo, ciclo usando each:.

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

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

Grazie, ogni altra risposta che ho trovato non mi ha aiutato affatto, grazie per avermi dato la mia soluzione :) Accetto questa come la risposta in un minimo di – PhazingAzrael

+0

nota che non ci sono virgolette singole o doppie per la prima parte scritta in regex –

Problemi correlati