[英]How do I show a message before redirect
我將員工保存到數據庫中
成功之后,我想向用戶顯示消息,我創建了一個方法來做到這一點:
<div class="MessagePanelDiv">
<asp:Panel ID="Message" runat="server" Visible="False">
<button type="button" class="close" data-dismiss="alert">×</button>
<asp:Label ID="LabelTypeMessage" CssClass="messageType" runat="server" /> <asp:Literal ID="LiteralMessage" runat="server" />
</asp:Panel>
</div>
與javscript:
$(document).ready(function () {
window.setTimeout(function () {
$(".alert").fadeTo(1500, 0).slideUp(500, function () {
$(this).remove();
});
}, 3000);
});
以及Code-Behind中的ShowMessage()方法:
public void ShowMessage(String message, WarningType type)
{
//temp var to store the message type
String MessageType;
//gets the controls from the page
Panel PanelMessage = this.FindControl("Message") as Panel;
Label LiteralTypeMessage = PanelMessage.FindControl("LabelTypeMessage") as Label;
Literal LiteralMessage = PanelMessage.FindControl("LiteralMessage") as Literal;
//switch case to properly set the message type
switch (type.ToString())
{
case "Succes":
MessageType = "Success!";
break;
case "Info":
MessageType = "Info!";
break;
case "Warning":
MessageType = "Waarschuwing!";
break;
case "Danger":
MessageType = "Fout!";
break;
default:
MessageType = "";
break;
}
//sets the message and the type of alert, than displays the message
LiteralTypeMessage.Text = MessageType;
LiteralMessage.Text = " " + message;
PanelMessage.CssClass = String.Format("alert alert-{0} alert-dismissable", type.ToString().ToLower());
PanelMessage.Attributes.Add("role", "alert");
PanelMessage.Visible = true;
}
現在,當員工被保存后,我會致電:
ShowMessage(GetGlobalResourceObject("Global.errors", "SaveSuccess").ToString(), WarningType.Success);
顯示消息。 這工作正常,但即時通訊正在實施新頁面,所以現在我在插入Employee之后重定向。
我的問題:添加員工后,如何在回發之前向用戶顯示消息,或者如何在用戶重定向到的頁面上顯示消息
我編輯了函數ShowMessage以接受3個變量
ShowMessage(String message, WarningType type, String redirect)
並更新了方法:
LiteralTypeMessage.Text = MessageType;
if (string.IsNullOrWhiteSpace(redirect) || redirect == ""){
LiteralMessage.Text = " " + message;
}
else{
LiteralMessage.Text = " " + message + ", <script>window.setTimeout(function () { $('.alert').fadeTo(1500, 0).slideUp(500, function() {$(this).remove();});window.location = '" + redirect + "'}, 3000);</script>";
}
PanelMessage.CssClass = String.Format("alert alert-{0} alert-dismissable", type.ToString().ToLower());
PanelMessage.Attributes.Add("role", "alert");
PanelMessage.Visible = true;
因此,當String redirect為空時,它僅顯示消息
但是當它不顯示消息並重定向到頁面時
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.