Ho il seguente:jQuery: trovato il testo di una voce di elenco che contiene un ul nidificato
<ul id="list">
<li>item1
<ul>
<li>sub1</li>
<li>sub2</li>
</ul>
</li>
</ul>
mi piacerebbe rispondere a un evento li clic e utilizzare il testo del Li altrove. Tuttavia, se il clic è su un li che contiene un ul annidato, ovviamente ottengo il testo di tutti gli elementi.
$("#list li").click(function() {
alert($(this).text());
});
restituisce item1sub1sub2, come previsto.
Non riesco a capire come ottenere solo 'elemento1' se si fa clic sull'elemento 1 li. Ho provato il seguente (tra le altre cose) senza fortuna:
$("#list li").click(function() {
alert($(this).filter("ul").text());
});
Qualche idea?
EDIT
Questo è un frammento di un esempio - potrebbe essere più livelli di profondità. Inoltre, non desidero avvolgere il testo dell'elenco in uno span o in un altro markup.
Grazie, funziona bene. Ho selezionato questa come risposta corretta, ma potrei aggiungere un'estensione attorno al testo per renderlo un po 'più pulito in questo caso. Ancora un buon consiglio per situazioni simili. – ScottE