我的当前项目有问题。我正在创建一个管理员页面,用户可以在该页面上编辑网站上的文本。它全部收集在1页并插入jQuerys,如此页面演示:
http://www.sohtanaka.com/web-design/easy-toggle-jquery-tutorial/
在我的Gridview中我有更新和删除按钮(从我正在使用的数据集生成的按钮),但是当我点击“更新”时,jQuery触发器会崩溃,因此,我必须再次打开触发器才能编辑该地区。
当我点击更新按钮时,是否有可能以某种方式让jQuery Trigger STAY打开?
我相信这是因为回发所以我一直在研究“如何防止回发”,但我能找到的答案最多的是如何防止ASP上的回发:按钮 - 这不是我的情况:)< / p>
我不确定我是否应该输入我的整个代码,因为我认为那些Gridview和数据源很长。
答案 0 :(得分:0)
此代码(来自您链接的教程)在页面加载时折叠容器:
$(".toggle_container").hide();
您需要有一些方法来了解页面加载的原因是因为页面正在进行回发。一种方法是在页面上有一个asp:HiddenField
字段,如果你正在进行回发,则将其值设置为“True”,否则设置为false。您可以在Page_Load
方法(代码隐藏)中执行此操作,如下所示:
Page_Load (Object source, EventArgs e)
{
if(Page.IsPostBack)
{
myHdnField.Value = "True";
}
else
{
myHdnField.Value = "False";
}
}
然后,您只需要在javascript中检查是否要折叠容器。 编辑:根据我们的评论,您可能需要等待DOM准备好。在这里我使用jQuery来检查(我还添加了对jQuery的引用):
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<script type="text/javascript">
jQuery(function() {
if(document.getElementByID('<%= myHdnField.ClientID %>').value == "False")
{
$(".toggle_container").hide();
}
});
</script>