Загрузка элемента управления с мастер-страницы

Используемый нами «элемент управления заголовком» содержит ссылку jquery. Когда я пытаюсь использовать какие-либо функции jquery с главной страницы, это не удается, потому что ссылка на jquery еще не добавлена.

Есть ли способ заставить элемент управления заголовком, встроенный в главную страницу, загружать свои ресурсы до того, как главная страница попытается сослаться на них?


person Community    schedule 17.08.2009    source источник


Ответы (3)


Вы можете использовать ScriptManager в мастере шаблонов, чтобы зарегистрировать файл включения javascript для JQuery.

Ты можешь использовать

  • ScriptManager.RegisterStartupScript или
  • ScriptManager.RegisterClientScriptInclude

Другой способ - в мастере шаблонов, в методе oninit используйте этот код

Page.Header.Controls.Add(new LiteralControl(" <script src="jquery" type="text/javascript"></script> "));
person Cédric Boivin    schedule 17.08.2009

Я бы включил ссылку jquery в заголовок самой мастер-страницы.

Или, если вам не нужен jquery на каждой странице, вы можете сделать это на своей главной странице:

<head runat="server">
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>   
</head>

А затем сделайте это на странице aspx, для которой нужен jquery:

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
</asp:Content>

В любом случае вы делаете то же самое. Он включает файл jquery в «голову» вашего HTML. И это самый простой способ убедиться, что jquery работает правильно.

person Steve Wortham    schedule 17.08.2009

Вы можете просто переместить ссылку на сценарий JQuery в aspx самой главной страницы (конечно, вверху). Тогда любые элементы управления смогут получить доступ к JQuery.

person John Fisher    schedule 17.08.2009