• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 520
  • Last Modified:

Javascript alert in content page not working

I am using a small class I found at  http://archive.devnewz.com/devnewz-3-20061129JavaScriptAlertShowmessagefromASPNETCodebehind.html.
It allows me to set alerts from code behind.
The alert works great when it's not set in a content page.
What do I need to do to get it to work from a content page?

  • 2
2 Solutions
Carl TawnSystems and Integration DeveloperCommented:
I would imagine it is more of an issue with triggering from within an UpdatePanel rather than a simple Content section. In either case try replace page.ClientScript in the code with ScriptManager.
You can also use like this

string alert_Script = "<script language='javascript'>alert('Your document has been saved!')</script>";
ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "AlertScript", alert_Script,false);

Open in new window

reference: http://www.dotnetspider.com/resources/39644-Open-Popup-window-using-asp-net-c-code.aspx
SheritlwAuthor Commented:

Thanks for your response.
I am trying to figure out how to change the class to your suggestion, but am not sure on what some of the required parameters are.
What are the parameters I need to get the scriptmanager.registerclientscriptblock(???)


Public Shared Sub Show(ByVal message As String)
      ' Cleans the message to allow single quotation marks
      Dim cleanMessage As String = message.Replace("'", "\'")

      Dim script As String = "<script type=""text/javascript"">alert('" & cleanMessage & "');</script>"

      ' Gets the executing web page
      'Dim mPage As MasterPage = TryCast(HttpContext.Current.Handler, MasterPage)
      'Dim mMast = mPage.MasterPageFile
      Dim page As Page = TryCast(HttpContext.Current.CurrentHandler, Page)
      Dim scriptMan As ScriptManager = TryCast(HttpContext.Current.CurrentHandler, ScriptManager)

      ' Checks if the handler is a Page and that the script isn't allready on the Page
      If page IsNot Nothing AndAlso Not page.ClientScript.IsClientScriptBlockRegistered("alert") Then
         scriptMan.RegisterClientScriptBlock(page, GetType(Alert), "alert", script)
      End If
   End Sub

Open in new window

SheritlwAuthor Commented:
Thank you both so MUCH!

It works.  

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now