Jak dołączyć jQuery do strony ASP.net?

Mam ASP.netUserControl który wymaga, aby zawierająca strona zawierała odniesienie do jquery.

W dawnych czasach po prostu umieściłbym odwołanie do jQuery na stronie zawierającej:

<HEAD>
   <SCRIPT type="text/javascript" src="Scripts/jquery-1.7.2.min.js"></SCRIPT>
</HEAD>

Ale moja zależność UserControl od jQuery jest wewnętrznym szczegółem implementacji, który nie powinien przeciekać na zewnątrz. W jaki sposób mój userControl może dyktować, że jQuery ma być zawarte na ostatniej stronie?

Badając to, znajduję wiele mylących rozwiązań, wywołujących różne funkcje w różnych momentach. waham się wspomniećkażdy z nich, ponieważ ludzie mogą myśleć, że którekolwiek z nich są ważne. mam nadzieję napoprawny odpowiedź, a nie odpowiedź, która działa.

Różne rozwiązania obejmują dzwonienie:

powołaniethis.Page.ClientScript.RegisterClientScriptInclude podczasRenderpowołaniethis.Page.ClientScript.RegisterStartupScript podczasRenderpowołaniethis.Page.ClientScript.RegisterStartupScript podczasPage_Loadpowołaniethis.Page.ClientScript.RegisterStartupScript podczas kliknięcia przyciskupowołaniePage.Header.Controls.Add(new LiteralControl( { Text = "<script type=\"text/javascript\" src=\"...\"></script>";);po prostu w tym<SCRIPT> element w twoimuserControl.ascx plikpowołanieRegisterClientScriptBlock podczasOnPreRender

Moje zamieszanie koncentruje się wokół:

kiedy chciałbym użyćRegisterClientScriptInclude vsRegisterStartupScript?kiedy chciałbym to nazwać podczasPage_Load vsRender vsPreRender vs kliknięcie przycisku?jak mam daćRegisterXxxxScriptXxx ścieżka do"Scripts/jquery-1.7.2.min.js"?

Wersja skrócona: jak przekonwertować

<%@ Page Title="Home Page" Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"
    Inherits="_Default" %><!DOCTYPE html>
<html>
<head runat="server">
    <script type="text/javascript" src="Scripts/jquery-1.7.2.min.js"></script>

do użycia w UserControl:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="MySuperCoolControl.ascx.cs" Inherits="Controls_MySuperCoolControl" %>

questionAnswers(4)

yourAnswerToTheQuestion