我有这种模式的等级顺序:课程、学习计划、系和院系。我有两列在引导。第一栏列出所有院系及其具体部门和每个部门的学习计划。第二列列出了所有课程。我希望当有人点击某个教员时,在第二栏中显示该教员的具体课程,替换所有课程,对于部门或学习计划也是如此。现在,我尝试了一些东西,但我不知道如何达到这个结果。我不知道如何列出每个学院的课程,你可以注意到,我把faculties.0作为一个测试。你知道吗
<script>
$('#btnClick').on('click', function () {
if ($('#1').css('display') != 'none') {
$('#2').show().siblings('div').hide();
} else if ($('#2').css('display') != 'none') {
$('#1').show().siblings('div').hide();
}
});
</script>
<div class="row">
<div class="col-md-3">
<div class="jumbotron">
<h4>Search courses</h4>
<hr>
<br>
<ul>
{% for faculty in faculties %}
<li id="btnClick">{{ faculty.name }}</li>
<ul>
{% for department in departments %}
{% if department.faculty == faculty %}
<li>{{ department.name }}</li>
<ul>
{% for study in studies %}
{% if study.department == department %}
<li>{{ study.name }}</li>
{% endif %}
{% endfor %}
</ul>
{% endif %}
{% endfor %}
</ul>
{% endfor %}
</ul>
</div>
</div>
<div class="col-md-9">
<div class="jumbotron">
<div id="1">
<h3>All courses</h3>
<ul>
{% for course in courses %}
<li>
<a id="first" href={{ course.slug }}>{{ course.name }}</a>
</li>
{% endfor %}
</ul>
</div>
<div id="2" style="display:none;">
<h3> {{ faculties.0 }} courses</h3>
<ul>
{% for course in courses %}
<li>
<a id="first" href={{ course.slug }}>{{ course.name }}</a>
<p>chinchin</p>
</li>
{% endfor %}
</ul>
</div>
</div>
</div>
</div>
好吧,我认为你的问题的一部分是你想要第二个隐藏的div,上面列出了特定于教师的课程,但是你当前的HTML模板只会给你一个隐藏的div,里面只有一个教师的课程。每个教职员工需要一个隐藏分区。你知道吗
NB:我不会用隐藏div这样做,我个人会用Bootstrap的tab/pill style。你知道吗
不管怎样,我认为下面应该给你你想要的那种结果。显然我不能用你的模型来测试。我已将模板更改为使用related objects notation而不是您的
if ==
样式。你知道吗我还对jQuery做了一些修改。希望它是可以的,尽管它的效果是
#1
div只有在单击任何链接之前才可见。你知道吗更新了:我错过了div id中
faculty.name
周围的{{ }}
,而且我也没有将jQuery脚本包装在$(document).ready()
中或包含jQuery cdn。它现在应该能按预期工作了。你知道吗更新2:将元素的
id
更改为使用faculty.pk
,它应该是一个数字,并避免任何空格问题。你知道吗相关问题 更多 >
编程相关推荐