2012-10-13 12 views
8

ho qualche codice HTML simile a questo:jQuery elemento più vicino con un attributo che contiene un valore

<tr id="nbContent_GR1">...</tr> 
<tr id="nbContent_GR2">...</tr> 
<tr id="nbContent_GR3">...</tr> 
<tr id="nbContent_GR4">...</tr> 
<tr id="nbContent_GR5">...</tr> 
<tr id="nbContent_GR6">...</tr> 

Entro una delle righe, voglio attraversare il DOM di trovare l'elemento più vicino che ha un attributo ID che inizia con "nbContent_GR". Quindi in pratica voglio essere in grado di trovare l'elemento genitore TR senza conoscerne l'esatto ID, solo il primo che inizia con "nbContent_GR". È possibile? Se è così, come potrei farlo?

BTW, sono a conoscenza dei selettori più vicini() e "contiene", ma non sono sicuro che i contenuti contengano o meno.

+0

Siamo spiacenti, non ha capito quello che hai chiesto. –

risposta

14

Basta fare:

tr = $(this).closest("[id^='nbContent_GR']"); 

che attraversare il DOM fino finché non trova un genitore con ID partendo

+0

Perfetto, sapevo che c'era una soluzione semplice che mi mancava. :) Non ero a conoscenza dello scopo del "^". Devi amare imparare qualcosa di nuovo. – Scott

3
.closest('[id^="nbContent_GR"]') 
Problemi correlati