jQuery: sostituire gli elementi br con paragrafi

A volte siamo costretti a gestire marcatura non semantica dove, ad esempio, il testo viene gestito con elementi br per creare spazi verticali. Possiamo sostituire tali elementi con paragrafi usando jQuery. Vediamo come.

Definiamo la seguente funzione che opera su una stringa HTML:


function replaceWithP(html) {
	
		var parts = html.split('<br>'),
			len = parts.length,
			i;
			
		var newHTML = '';
		
		for(i = 0; i < len; i += 1) {
		
			newHTML += '<p>' + parts[i] + '</p>';
		
		}    
		
		return newHTML;
	
}

Viene usato il metodo split() per creare un array dalla stringa di partenza usando come delimitatore lo stesso elemento br. Quindi viene assemblata una nuova stringa a partire dall'array appena creato.

Usiamo la funzione in questo modo:


$('#replace').click(function(event) {
	
		var $html = $('#test').html();
		
		$('#test').html(replaceWithP($html));
	
		event.preventDefault();
	
});

Potete visionare l'esempio finale in questa pagina.

Torna su