Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Having trouble injecting Javascript in AJAX enabled page with RegisterClientScriptBlock

56 views
Skip to first unread message

Crysta...@gmail.com

unread,
Apr 17, 2008, 2:09:26 PM4/17/08
to
Greetings,

I've been at this problem for some time now and have decided to seek
out some help.

Essentially, this is what I have. A basic ASP.NET 2.0 page. On this
page is the standard <form> tag. Under that, we have an UpdatePanel
object where the rest of my partial rendering controls live. There is
simply a basic control, such as a Literal or Label in the
UpdatePanel. When a button is clicked on the page, I want to send out
Javascript back to the Label or Literal (set the Text property of this
control with javascript) such as "<script>alert('hello');</script>"

The problem? Whatever I send to the control gets there but nothing is
ever executed.

So, I have started trying RegisterClientScriptBlock() on the top level
"Page" object and even at the inner control level.

Nothing seems to happen.

If I inject javascript in the "Page_Load" method, it runs and works.
However, I need to inject javascript at a later time after the page
loads (since this is AJAX).

Does anyone have any words of advice? Anyone that has been down this
road? I sure would appreciate some help.

Crysta...@gmail.com

unread,
Apr 17, 2008, 2:54:23 PM4/17/08
to
I got it.

Use the STATIC method "RegisterClientScriptBlock" instead of the
ClientScriptManager for a control.

Something like this will work globally:

Microsoft.Web.UI.ScriptManager.RegisterClientScriptBlock(UpdatePanel1,
typeof(UpdatePanel),“TestKey”, “alert(’Test’);“, true);

Two days wasted but now I feel better.

bruce barker

unread,
Apr 20, 2008, 1:33:02 AM4/20/08
to
you server injected client to be render from a update panel postback,
you code needs to call the ScripManager.RegisterClientScriptBlock and
this call must be from a control inside the update panel. this is
because only html/script rendered inside the update panel is returned to
the client.


-- bruce (sqlwork.com)

0 new messages