【发布时间】:2016-08-25 13:32:55
【问题描述】:
考虑jQuery代码的以下sn-p
function toggleIcon(e) {
$(e.target)
.prev('.panel-heading')
.find(".more-less")
.toggleClass('glyphicon-plus glyphicon-minus');
}
$('.panel-group').on('hidden.bs.collapse', toggleIcon);
$('.panel-group').on('shown.bs.collapse', toggleIcon);
上面的代码在$(document).ready(function(){});里面
标记看起来像:
<div class="panel-group" id="collapse">
<div class="panel panel-primary">
<div class="panel-heading">
<h4 class="panel-title"><a data-parent="#collapse" data-toggle="collapse" href="#collapse-one"><i class="more-less glyphicon glyphicon-plus"></i> Item Details
<span class="badge pull-right" id="itemdetails">0</span></a></h4>
</div>
<div class="panel-collapse collapse in" id="collapse-one">
<div class="panel-body">
@for (int i = 0; i < Model.MyList.Count; i++) {
<div class="panel panel-info">
<div class="panel-heading">
<h4 class="panel-title"><a data-toggle="collapse"
href="#@Model.MyList[i].Number"><i class="more-less glyphicon glyphicon-plus">@Model.MyList[i].Number, @Model.MyList[i].PropA, @Model.MyList[i].PropB</i></a></h4>
</div>
<div class="panel-collapse collapse" id="@Model.MyList[i].Number">
<div class="panel-body"></div>
</div>
</div>
</div>
</div>
}
</div>
</div>
这适用于除第一个面板之外的每个面板。第一个面板将始终打开,而不是添加一个加号,而是添加一个减号。第一个面板有 panel-collapse collapse in 类,它确保面板在页面加载时打开。
请注意,我有嵌套面板,这也适用于这些面板,它只是第一个给我带来问题的面板
谁能告诉我我做错了什么。
【问题讨论】:
-
也发布相关的 HTML
-
@ZimSystem 我已经更新了我的 OP
标签: jquery asp.net-mvc twitter-bootstrap