ASP C#| MessageBox一直显示
我有一个JavaScript消息框,当我在中继器中单击事件或刷新当前页面时,它会一直显示 以下是函数:ASP C#| MessageBox一直显示,c#,javascript,asp.net,jquery,C#,Javascript,Asp.net,Jquery,我有一个JavaScript消息框,当我在中继器中单击事件或刷新当前页面时,它会一直显示 以下是函数: public myFunctions() { } /** Display Successs/Error Message **/ public void DisplayUserMessage(string messageType, string messageString, Label ErrorMessageLabel) { ErrorMessageLabel.Visible = t
public myFunctions()
{
}
/** Display Successs/Error Message **/
public void DisplayUserMessage(string messageType, string messageString, Label ErrorMessageLabel)
{
ErrorMessageLabel.Visible = true;
ErrorMessageLabel.Text = "<b>" + messageType.Substring(0, 1).ToUpper() + messageType.Substring(1).ToLower() + ":</b> " + messageString;
ErrorMessageLabel.CssClass = messageType.ToLower() + "_message";
}
public void HideUserMessage(Label ErrorMessageLabel)
{
ErrorMessageLabel.Visible = false;
ErrorMessageLabel.Text = "";
ErrorMessageLabel.CssClass = "";
}
}))
在母版页上:
<!-- Message Box -->
<div id="msgBox" runat="server">
<asp:Label ID="ErrorMessageLabel" CssClass="" runat="server" Visible="false"></asp:Label>
</div>
有人知道我如何在单击另一个按钮或刷新页面后阻止它继续显示吗?使用隐藏输入,并在调用成功函数时设置值。所有其他时间重置该值。在document ready函数中,检查隐藏元素的值,然后调用animate函数
<input id="txtHidSuccess" type="hidden" runat="server" />
在成功/错误函数中
txtHidSuccess.Value = "1";
jQuery
$(function(){
if ($("#txtHidSuccess").val() === "1") {
/** Success/Error Messages **/
$('.success_message').animate({ opacity: 1.0 }, 2000).fadeOut('slow');
$('.error_message').animate({ opacity: 1.0 }, 2000).fadeOut('slow');
}
});
我知道您在哪里调用DisplayUserMessage(),但没有看到HideUserMessage()。我的猜测是,当您设置ErrorMessageLabel属性时,它们存储在视图状态中,并在回发中持久化 与使用ASP.NET标签控件不同,您可以尝试使用常规div包装一些文本并使用CSS隐藏它。当应用程序中发生成功事件时,您可以使用向客户端写入显示div的脚本。然后,如果div可见,您的动画功能可以淡出div
if(IsPostBack)
new myFunctions().HideUserMessage(ErrorMessageLabel);
这起作用了。谢谢@Harie如果(!postback){ErrorMessageLabel.Text=”“}请使用页面加载函数中的代码并重试
txtHidSuccess.Value = "1";
$(function(){
if ($("#txtHidSuccess").val() === "1") {
/** Success/Error Messages **/
$('.success_message').animate({ opacity: 1.0 }, 2000).fadeOut('slow');
$('.error_message').animate({ opacity: 1.0 }, 2000).fadeOut('slow');
}
});
if(IsPostBack)
new myFunctions().HideUserMessage(ErrorMessageLabel);