Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

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

0.00/5 (No votes)
9 Apr 2008 1  
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 header
        Dim 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 header
        Dim 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.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here