Existe uma maneira mais extravagante de obter um item anterior com a mesma classe?

Eu tenho linhas de tabela assim:

<tr class="parent0 row3" data-parent="0">
   <td>...</td>
</tr>
<tr class="parent3 row7" data-parent="3">
   <td>...</td>
</tr>
<tr class="parent3 row12" data-parent="3">
   <td>...</td>
</tr>
<tr class="parent0 row8" data-parent="0">
   <td>...</td>
</tr>
<tr class="parent0 row9" data-parent="0">
   <td>...</td>
</tr>

Então, se eu tiver um manipulador de cliques:

$(document).on({
   "click": function(){
      var parentId = $(this).data("parent");
      //get previous sibling:
      //OPTION A:
      var prevParentA = 
              $(this).prev("parent" + parentId); //works sometimes
      //OPTION B:
      var prevParentB = 
              $(this).prevAll("parent" + parentId).eq(0); //works all the time but ugly...
   }

}, "tr");

Opção A só funciona quando o item anterior direto tem o mesmo pai, mas quando isso énão O caso,prevParentA === [] qual énão o resultado desejado.
Opção B parece sempre funcionar, mas éfeio nisso está selecionandoTODOS dos itens anteriores que correspondem a essa classe e selecionando o primeiro que encontrar.

Existe uma opção melhor do queOpção B?

questionAnswers(1)

yourAnswerToTheQuestion