salve a tutti,
ecco il problema di oggi:
in un div ho del testo più altri div annidati... come posso riuscire ad eliminare soltanto il testo?
questo è l'html:
grazieecodice:<div> <div>.......</div> testo da rimuovere <div>.......</div> </div>![]()
salve a tutti,
ecco il problema di oggi:
in un div ho del testo più altri div annidati... come posso riuscire ad eliminare soltanto il testo?
questo è l'html:
grazieecodice:<div> <div>.......</div> testo da rimuovere <div>.......</div> </div>![]()
in qualche modo devi racchiudere quel testo in un elemento
dopo richiami
$('#idElemento').text('')
ma se non ti serviva l' elemento prima, probabilmente non ti serve adesso vuoto, quindi fai prima a rimuoverlo del tutto con remove()
altre vie sono sono plausibili ma molto piu' complesse
purtroppo non posso racchiudere il testo in un elemento.....
il div contenitore ha un id che prima non avevo messo
<div id="abcd">
<div>.......</div>
testo da rimuovere
<div>.......</div>
</div>
ho provato anche con
$("#abcd").text('');
che in teoria dovrebbe funzionare.... ma mi elimina anche i div non solo il testo![]()
non esiste qualche selettore particolare per il testo?
ravanando nella documentazione di jquery ho trovato
http://api.jquery.com/text-selector/
ma non ho capito se mi può essere utile... ho fatto qualche prova ma non riesco ad utilizzarlo.
le vie più complesse quali sono?
Mi pare chiaro dalla documentazione che quel selector non serve a quello che dici tu.
Fai una cosa così, che non è il massimo, ma dovrebbe funzionare.
È orrendo e probabilmente lentino, ma penso che vada. Ma farei in modo di metterlo all'interno di un elemento come ha suggerito Xinod.codice:$clone = $('#abcd').clone(false); $('#abcd').empty(); $clone.children('div').each(function(){ $('#abcd').append($(this)); });
Mi è appena venuto in mente che il ciclo è anche inutile, ero un po' fuso quando ho risposto.
codice:$clone = $('#abcd').clone(false); $('#abcd').empty(); $clone.children('div').appendTo($('#abcd'));
grazie mxa,
il problema è che il tuo script mi elimina anche gli altri div oltre al testo....
comunque ho trovato una soluzione, che con il senno di poi mi sembra la più semplice....
ho applicato un CSS al div #abcd con un bel "font-size:0" !![]()