我在 ASP.Net 页面中有一个 div。在该 div 内部是一个包含 asp:dropdownlists
的表单,该表单有条件地更改其他字段,因此需要 PostBack。当回发发生时,可展开的 div 返回到不可见的折叠状态。从下拉列表中选择值后,我希望展开的 div 保持打开状态。
下面是用于展开和折叠 div 的 jQuery
:
$('.toggler1').live('click', function () {
$(this).parent().children().toggle();
$(this).parent().parent().find('.toggled_content').slideToggle();
$(this).closest(".toggleHolder").next(".hiddenText").slideToggle();
});
最佳答案
向您的表单添加一个隐藏的输入,并为其提供一个可区分的 ID 或类。如果 div 被展开,这将发布 true。如果愿意,可以给它一个初始值“false”。
然后添加一行:
$('.toggler1').live('click', function () {
$('#MyHiddenInputNamedBetter').val('true'); // Add this line
然后在您的 .NET 代码中执行类似的操作(我有 VB 背景):
<% If isPostBack AndAlso CBool(Request.Form('MyHiddenInputNamedBetter')) Then %>
<script>
$('.toggler1').parent().children().toggle(); // .... etc.
</script>
<% End If %>
关于jquery - 在页面回发后保持可扩展的 div 打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34610600/