python - 关于django 模板中循环列表
欧阳克
欧阳克 2017-07-05 10:34:48
[Python讨论组]

有一个导航条,想在这个导航下被激活的时候添加一个class = 'on'属性
如果点导航第二项 就第二项加这个class

{% for nav in NAV %}
  • nav
  • {% end for %}

    比如

  • 第一项
  • 第二项
  • 第三项
  • 这种该怎么实现呢?

    欧阳克
    欧阳克

    温故而知新,可以为师矣。博客:www.ouyangke.com

    全部回复(2)
    淡淡烟草味
    #后端
    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 %}
    ringa_lee

    你这个跟 django 没什么关系啊。
    你这个是前端页面的问题,比如:
    你一次把导航都加载到前端页面,然后需要根据点击来打开当前菜单,然后关闭其他菜单的效果,对吧?
    要是我理解的没问题的话,这是前端的问题

    1、 bootstrap 或者 UIKit 都是支持这种效果的;

    2、你自己写导航样式,比如名称为active,然后在jQuery 里给你点击的对象 $(this).addClass('active'),这是一个思路;

    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号