65.9K
CodeProject is changing. Read more.
Home

How to add javascript or stylesheet to header of asp.net page?

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.57/5 (12 votes)

Apr 9, 2008

CPOL
viewsIcon

110788

This article will show you how to dynamically add javascript or stylesheet to the header of asp.net page.

Introduction

Some times you want to dynamically add a javascript to the header of page or even dynamically add a stylesheet to yuor page.

Background

When we are using Page.ClientScript functions, the scripts won't be added to the header it is going to be added to different part of page.

Using the code

The following code shows how you can dynamically add script or stylesheet or any other type of control to the header of page.

'Add the css to headerDim hControl As LiteralControl = New LiteralControl hControl.Text = "<link href=""default.css"" type=""text/css"" rel=""stylesheet"" />"Me.Page.Header.Controls.Add(hControl) 'Add javascript for the headerDim header As LiteralControl = New LiteralControl header.Text = "<script type=""text/javascript"" src=""EWNHeader.js""></script>"Me.Page.Header.Controls.Add(header) 

Here is the new version of my code which i got it from comments (nice job Matteo) In the following code you can avoid using literal: To add a meta tag:

 HtmlMeta metadescription = new HtmlMeta(); metadescription.Name = "description"; metadescription.Content = "Your page description here"; Page.Header.Controls.Add(metadescription); 
To add a stylesheet:
 HtmlLink css = new HtmlLink(); css.Href = "mystyle.css"; css.Attributes["rel"] = "stylesheet"; css.Attributes["type"] = "text/css"; css.Attributes["media"] = "all"; Page.Header.Controls.Add(css); 
To add an external javascript reference:
 HtmlGenericControl js = new HtmlGenericControl("script"); js.Attributes["type"] = "text/javascript"; js.Attributes["src"] = "mylibrary.js"; Page.Header.Controls.Add(js); 
Thanks again Matteo;)

Points of Interest

As you can see first we define a LiteralControl and then we assign our javascript or stylesheet to the text properties of LiteralControl and then we will add the LiteralControl to header of the page. Now when you run the page, you will see the javascript or stylesheet has been added to the header. you can call put all this code in afunctiona nd call it on the page_load of asp.net page.

close