recherche

Maison  >  Questions et réponses  >  le corps du texte

python - À propos des listes en boucle dans les modèles Django

Il y a une barre de navigation, et je souhaite ajouter un attribut class = 'on' lorsque cette navigation est activée
Si vous cliquez sur le deuxième élément de navigation, ajoutez cette classe au deuxième élément

{% for nav in NAV %}
<li>nav</li>
{% end for %}

Par exemple

<li class="on">第一项</li>
<li>第二项</li>
<li>第三项</li>

Comment y parvenir ?

欧阳克欧阳克2700 Il y a quelques jours969

répondre à tous(2)je répondrai

  • 淡淡烟草味

    淡淡烟草味2017-07-05 10:36:48

    #后端
    navs = [
        {'name': '菜单1', 'url': 'url1'},
        {'name': '菜单2', 'url': 'url2'}
    ]
    
    for nav in navs:
        nav['class'] = 'on' if nav['url'] == request.path else None
        
    #前端
    {% for nav in navs %}
    <li class={{ nva.class }}>{{ nva.name }}</li>
    {% end for %}

    répondre
    0
  • ringa_lee

    ringa_lee2017-07-05 10:36:48

    Vous n'avez rien à voir avec Django.
    Il s'agit d'un problème avec la page frontale. Par exemple :
    Vous chargez la navigation vers la page frontale en même temps, puis vous devez ouvrir le menu actuel en fonction des clics, puis désactiver les effets des autres. les menus, non ?
    Si je comprends bien, il s'agit d'un problème frontal

    1. Bootstrap ou UIKit prennent tous en charge cet effet ;

    2. Écrivez vous-même le style de navigation, par exemple, le nom est

    , c'est une idée ;

    répondre
    0
  • Annulerrépondre