Referencing a .js (JavaScript) file from ASP.NET Content Page

I have seen developers adding a JavaScript reference to the Master Pages and then using the JavaScript functions in Content Pages. However, with this approach, the JavaScript is referenced in each page of the application using that MasterPage as its template. If you want to reference the JavaScript file only on one ContentPage, then here's how to do so:

C#


protected void Page_Load(object sender, EventArgs e)


{


    Page.ClientScript.RegisterClientScriptInclude("onlyone", ResolveUrl(@"Scripts\SomeScript.js"));


    if (!Master.Page.ClientScript.IsStartupScriptRegistered("MS"))


    {


        Master.Page.ClientScript.RegisterStartupScript


            (this.GetType(), "MS", "SomeMethodJS();", true);


    }


}




VB.NET


Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)


    Page.ClientScript.RegisterClientScriptInclude("onlyone", ResolveUrl("Scripts\SomeScript.js"))


    If (Not Master.Page.ClientScript.IsStartupScriptRegistered("MS")) Then


        Master.Page.ClientScript.RegisterStartupScript(Me.GetType(), "MS", "SomeMethodJS();", True)


    End If


End Sub







About The Author

Suprotim Agarwal
Suprotim Agarwal, Developer Technologies MVP (Microsoft Most Valuable Professional) is the founder and contributor for DevCurry, DotNetCurry and SQLServerCurry. He is the Chief Editor of a Developer Magazine called DNC Magazine. He has also authored two Books - 51 Recipes using jQuery with ASP.NET Controls. and The Absolutely Awesome jQuery CookBook.

Follow him on twitter @suprotimagarwal.

No comments: