Bootstrap手风琴防止在asp.net上回发崩溃
我有一个bootstrap手风琴,我尝试重新打开回发上最后打开的窗格,就像有人点击我页面上的保存按钮一样。 我找到了这个解决方案: 在页面刷新/导航上保留Twitter Bootstrap Collapse状态
但我无法评论它,因为我没有足够的积分作为用户。
由于某种原因,我无法使function工作:
//when a group is shown, save it as the active accordion group $("#applicant-accordion").bind('shown', function () { var active = $("#applicant-accordion .in").attr('id'); $.cookie('activeAccordionGroup', active) });
我试图在FireBug中测试它,但我从来没有使用var激活的行。 它停在$(“#applicant-accordion).bind的行。我已经尝试将.bind更改为.on,因为我的jQuery是版本1.7.2
我很茫然,我希望你能引导我找到解决方案。 我在ASP.NET中构建它。
$(document).ready(function () { var last = $.cookie('activeAccordionGroup'); if (last != null) { //remove default collapse settings $("#applicant-accordion .panel-collapse").removeClass('in'); //show the account_last visible group $("#" + last).addClass("in"); } }); //when a group is shown, save it as the active accordion group $("#applicant-accordion").on('shown', function () { var active = $("#applicant-accordion .in").attr('id'); $.cookie('activeAccordionGroup', active) });
通常,只要您想在ASP.NET中回发后保留值,就会有一种常见的方法。
将值存储在ASP.NET隐藏字段中。 在您的情况下,将以下active
变量的值存储在hiddren字段中。
var active = $("#applicant-accordion .in").attr('id');
由于ASP.NET维护的视图状态回发后,隐藏字段将保留该值。 然后,您可以在页面加载时使用此值来设置accordin。
$(document).ready(function () { var last = // Get value from the hidden field if (last != null) { // Set the accordin values. } });
只是发布我的解决方案:
添加了隐藏字段:
并在页面底部的JavaScript,以确保DOM具有以下元素: