2013-12-16 13 views
5

utilizzando jQuery, qualcuno sa come posso pulire questo markup:Utilizzare jQuery per pulire il codice HTML?

<span style="font-size:19px"> 
    <span style="font-size:20px"> 
    <span style="font-size:21px"> 
     Something 
    </span> 
    </span> 
</span> 

... e trasformarlo in questo:

<span style="font-size:21px"> 
    Something 
</span> 

Se qualcuno mi può puntare nella giusta direzione, sarebbe essere molto apprezzato O se qualcuno conosce qualche libreria in grado di rimuovere i tag inutili dall'HTML, sarebbe fantastico.


UPDATE

Il codice di cui sopra è solo un esempio. Potrebbero esserci 20 campate avvolte, ad esempio ...

risposta

8

soli unwrap tutti i tag span, che lascerebbe solo il tag span interno.

$('span').unwrap(); 

FIDDLE

+1

non sarà questa rimuovere tutte le campate? – Andrew

+0

@Andrew - No, il tag interno non verrà rimosso – adeneo

+0

@Andrew - Dai un'occhiata al Fiddle - vengono rimosse solo le due span esterne :) – Advocation

-1

Non è una soluzione jQuery, ma non so se ti serve per vivere il tuo codice HTML. In caso contrario, è possibile utilizzare questo strumento online: http://www.dirtymarkup.com/ trasformerà il tuo codice:

<span style="font-size:19px"> 
    <span style="font-size:20px"> 
    <span style="font-size:21px"> 
     Something 
    </span> 
    </span> 
</span> 

in:

<span style="font-size: 19px">Something</span> 
0

Si potrebbe anche fare questo:

$('span').each(function() { 
    if($(this).prop('tagName') == $(this).children(":first").prop('tagName')) { 
     $(this).children(":first").unwrap(); 
    } 
}); 
Problemi correlati