2016-06-03 3 views
0

ich arbeite an einem mit einem "display none" und ich möchte es nach einem Klick auf ein Bootstrap-Symbol zeigen. HierJQuery - Toggle <TR> in der Tabellenvorlage

ist der Code:

Vorlage:

<a href="#" class="toggler" data-prod-cat="{{order.cartId.id}}"><span class="glyphicon glyphicon-th-list" aria-hidden="true" data-toggle="tooltip" data-placement="top" title="{% trans 'show detail' %}"></span></a> 
      </td> 
     </tr> 
     <tr class="cat{{order.cartId.id}}" style="display:none"><td></td><td colspan="5"> 

         {% for detailOrder in detailOrders %} 
          {% if detailOrder.cartId.id == order.cartId.id %} 
           <li>{{detailOrder.quantity}} {{detailOrder.unit}} de {{detailOrder.productId.name}} pour {{entreprise.currency.symbol}} {{detailOrder.totalPrice}} 
          {% endif %} 
         {% endfor %} 
         <br><u>Livraison</u> : {{order.deliveryInstruction.instructions|truncatechars:60}} 

     </td></tr> 
     {% endfor %} 

Javascript:

<script type="text/javascript"> 
$(document).ready(function(){ 
$(".toggler").click(function(e){ 
    e.preventDefault(); 
    $('.cat'+$(this).attr('data-prod-cat')).toggle(); 
}); 
}); 

Ich habe keine Fehler auf meiner Konsole so dass ich ein wenig bin Verloren über das Finden einer Soution.

Vielen Dank für Ihre Hilfe und einen schönen Tag :)

+0

können Sie überprüfen, indem Sie Ihren Code überprüfen, dass Ausgabe od diese {{order.cartId.id}} ist gleich für data-prod-cat = "{{order.cartId.id}}" und class = "cat { {order.cartId.id}} "? wie data-prod-cat = "1" und class = "cat1"? Wenn ja, dann funktioniert Ihr Code. –

Antwort

0

Versuchen Sie folgendes:

$(document).ready(function(){ 
 
    
 
    $(".toggler").click(function(){ 
 
    if($('.cat').css('display') === 'none'){ 
 
     $('.cat').css('display', 'block'); 
 
    }else{ 
 
     $('.cat').css('display', 'none'); 
 
    } 
 
    }); 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 
 

 

 
<input type="button" class="toggler" value="Toggle"/> 
 

 
<table> 
 
<tr class="cat" style="display:none;"> 
 
    <td>Conlumn 1</td> 
 
     <td colspan="5">Conlumn 2</td> 
 
</tr> 
 
    
 
    </table>

Ich hoffe, das hilft!

+0

Ich werde es an meinen Code anpassen. Ich werde dir sagen, ob ich ein Problem habe, aber der Ausschnitt zeigt, was ich will. Das Problem ist die Komplexität der Vorlage ^^ –

+0

Wenn meine Antwort hilft, werde ich mich freuen, wenn Sie diese Antwort wählen ... oder wenn Sie markieren, dass diese Antwort nützlich war! Vielen Dank! –