Kjøre c# kode når et vindu lukkes
Ved å bruke Ajax kan man kalle C# kode ved body.unload osv.
Koden her sjekker om en verdi er satt som indikerer at record er endret (document.getElementById('" + oppdatert.ClientID + "').value!='')
Hvis den er endret kalles c# metoden OppdaterMeny.
Sett enablepagemethods til true i scriptmanager:
Aspx-fil
<asp:ScriptManager ID="script1" runat="server" />
Javascript
private void JavaScript()
{
StringBuilder script = new StringBuilder();
script.Append("<script language='javascript'>");
script.Append("function retVerdi(){window.returnValue=document.getElementById('" + oppdatert.ClientID + "').value;}");
script.Append("function handleClose(){if(document.getElementById('" + oppdatert.ClientID + "').value!='') PageMethods.OppdaterMeny();}"); script.Append("</script>");
{
StringBuilder script = new StringBuilder();
script.Append("<script language='javascript'>");
script.Append("function retVerdi(){window.returnValue=document.getElementById('" + oppdatert.ClientID + "').value;}");
script.Append("function handleClose(){if(document.getElementById('" + oppdatert.ClientID + "').value!='') PageMethods.OppdaterMeny();}"); script.Append("</script>");
Body.Attributes.Add("OnUnload", "handleClose(); retVerdi();");
Page.ClientScript.RegisterStartupScript(this.GetType(), "retVerdi", script.ToString());
}
Page.ClientScript.RegisterStartupScript(this.GetType(), "retVerdi", script.ToString());
}
C# metode som kalles
[WebMethod]
public static void OppdaterMeny()
{
if (HttpContext.Current.User.Identity.IsAuthenticated)
{
CMSUtils cms = new CMSUtils();
cms.SettCMSMenyFilter();
{
if (HttpContext.Current.User.Identity.IsAuthenticated)
{
CMSUtils cms = new CMSUtils();
cms.SettCMSMenyFilter();
}
}
}
dvs at du trenger en
using System.Web.Services;
på toppen...
på toppen...
Se evt her for mer info: http://aspalliance.com/1294_CodeSnip_Handle_Browser_Close_Event_on_the_ServerSide.all
Posted by email from Henris blogg (posterous)
Subscribe to:
Post Comments
(
Atom
)
No comments :
Post a Comment