2017-07-23 1 views
0

J'ai deux tr qui correspondent les uns aux autres. Je veux faire en sorte que si l'utilisateur passe dans le date ... il obtient le par son data-date puis chercher le correspondant element dans tbody.Récupère l'élément correspondant dans le tableau

J'ai obtenu la première partie droite ... cela me obtient le index:

var index = $("[data-date='" + item.start + "']").index(); 

Maintenant ... je vais avoir du mal à obtenir son élément tbody correspondant.

J'ai essayé:

$("[data-date='" + item.start + "']").closest('thead').next('tbody')

mais il vient aussi vide.

Donc, une fois que j'ai le tbody ... je peux aller à l'enfant nth en utilisant la index

<div class="fc-content-skeleton"> 
    <table> 
     <thead> 
     <tr> 
      <td class="fc-day-top fc-sun fc-today fc-state-highlight" data-date="2017-07-23"><span class="fc-day-number">23</span></td> 
      <td class="fc-day-top fc-mon fc-future" data-date="2017-07-24"><span class="fc-day-number">24</span></td> 
     </tr> 
     </thead> 
     <tbody> 
     <tr> 
      <td class="fc-event-container" rowspan="2"> 
       <a class="fc-day-grid-event fc-h-event fc-event fc-start fc-end"> 
        <div class="fc-content"> <span class="fc-title">100</span></div> 
       </a> 
      </td> 
      <td class="fc-event-container"> 
       <a class="fc-day-grid-event fc-h-event fc-event fc-start fc-end"> 
        <div class="fc-content"> <span class="fc-title">100</span></div> 
       </a> 
      </td> 
     </tr> 
     </tbody> 
    </table> 
</div> 
+0

Essayez-vous de sélectionner l'élément '' dans l'élément 'tbody> tr'? – guest271314

+0

Comment l'utilisateur "passe-t-il" la date? Je ne vois aucun champ de saisie. D'où vient le 'item.start'? S'il vous plaît poster tout votre code pertinent. –

+0

@ guest271314 oui ... exactement – user4756836

Répondre

1

Vous pouvez utiliser .eq()

$("tbody tr td").eq(index) 
1

Votre sélecteur fonctionne ici. J'ai fait quelques tests de console et le tbody a été trouvé sans aucun problème.

> jQuery("[data-date='2017-07-23']").closest('thead').next('tbody').length 
> 1 

Le problème peut être lié à la valeur de item.start. Vérifiez si c'est correct.

+0

Nope .. que ne fonctionnerait pas ... les parents obtiennent toutes les tables sur la page – user4756836

+0

Ouais ... vous avez raison. Édité cette partie. –