views:

219

answers:

3

I want to execute javascript function from code behind page.

I have two way that first that I can call javascript of html page in my code behind.

second is that i can write javascript function in to my code behind.

but i am not which one is better and how can i do this.

Please tell me that how can i do this.

+3  A: 
ScriptManager.RegisterStartupScript(...)

Look here for details

Manu
+1  A: 

Try the following in your codebehind

ClientScript.RegisterStartupScript(GetType(), "scrptName", "javascript: alert('hi'); ", true);

You can replace alert('hi'); with your javascript function you want to call from code behind.

Himadri
what is the meaning of GetType() and scrptName
Pankaj Mishra
RegisterStartupScript (type, key, script)here GetType() returns type of the page. And scrptName is the key.
Himadri
http://msdn.microsoft.com/en-us/library/system.web.ui.clientscriptmanager.registerstartupscript.aspxcheck this link for more details.
Himadri
A: 

Hi

You can call Js functions as a script registered on the codebehind itself.

Page.RegisterStartupScript("key","value")

key is the name you want to give the script eg. "PageClose" value is the;

stringBuilder str = new StringBuilder()
str.Append("<script = language='javascript'>");
str.Append("window.close();");
str.Append("</script>")

here instead of using the window.close you coud append your js function as a string, ideally i put this string builder class and build the script in the constructor if i need it always in the page

Then use this in the event handler you want to execute the script

Page.RegisterStartUp("PageClose",str.ToString());

This would place the javascript before the closing tag of the page thats rendered

Page.ClientScriptBlock("PageClose",str.ToString());

This would place the JS function after the opening tag of the page thats rendered

Hope this helps

Pace
StringBuilder str = new StringBuilder(); str.Append("<script = language='javascript'>"); str.Append("{"); str.Append(" chooseStyle(" + colr + "," + wd + "); "); str.Append("function changeCSS()"); str.Append("}"); str.Append("</script>"); Page.RegisterStartupScript("PageClose", str.ToString());I am using this.But its not working
Pankaj Mishra
I want to set the value colr and wd in chooseStyle on page load.but right now its not working
Pankaj Mishra