用jQuery删除Div仍然存在?

时间:2013-11-20 22:49:28

标签: javascript jquery html asp.net css

我在ASP.NET中有一个旧的应用程序。在带有“提交”按钮的表单中,我将此div放在页面顶部:

<div id="submitIndication" class="saveIndication" runat="server" visible="false">
    Your request has been submitted.
</div>

在代码隐藏中的btnSubmit_Click上,我把这行:

submitIndication.visible = true

此代码然后处理淡出div:

jQuery(document).ready(function () {
    setTimeout(fadeOut, 4000);
});

function fadeOut() {
    jQuery("#submitIndication").slideUp(400);
};

一切正常。但是,页面上还有另外两个按钮,“Prefill Form”和“Opt Out”。这些调用自己的方法(btnOptOut_Click和btnPrefillFormInfo_Click),它们都不会以任何方式触及submitIndication div。

但是,在我第一次提交表单后,当我点击预填表格或选择退出时,页面会刷新,并且提交div会再次显示在顶部。如果我在提交之前单击,则不会发生这种情况。

此时似乎div仍然在页面上,只是显示直到JavaScript淡出它。我已经尝试过所有方式(将CSS设置为false并显示为none,remove(),hide(),attr()等),似乎没有任何东西可以摆脱这个div。

这感觉应该是这么简单。如何在提交并单击其他按钮后显示的div?

1 个答案:

答案 0 :(得分:2)

试试这个:

将DIV声明为:

<div id="submitIndication" class="saveIndication" runat="server" style="display:none">
    Your request has been submitted.
</div>

在代码隐藏中的btnSubmit_Click上放这行(假设你使用的是C#):

submitIndication.Style["display"] = "block"; 

并使用您当前的淡出代码。

更新来想想它更简单的方法应该有效。保留设置中的所有内容,只需将EnableViewState = "false"添加到DIV的HTML定义中即可。