ASP.NET порядок добавления скриптов на мастер-страницы
-
06-09-2019 - |
Вопрос
У меня есть главная страница, которая добавляет библиотеку jquery через registerclientscriptinclude:
Page.ClientScript.RegisterClientScriptInclude(this.GetType(),
"JQuery",
Page.ResolveUrl("~/Scripts/jquery-1.2.6.min.js"));
На странице, которая использует эту главную страницу, я хочу включить скрипт, который зависит от jquery:
Page.ClientScript.RegisterClientScriptInclude(this.GetType(),
"jqplugin1",
Page.ResolveUrl("~/Scripts/jquery.plugin1.compressed.js"));
Это вызывает проблему, поскольку сначала пишутся клиентские скрипты страницы, а затем клиентские скрипты master pages (в результате чего плагин жалуется, что "jquery" не определен).
Есть ли какой-либо способ контролировать порядок включения клиентского скрипта?В качестве альтернативы любая рекомендация о том, как лучше всего это контролировать (временно главная страница просто включает в себя все...но это не сработает в долгосрочной перспективе).
Решение
поскольку главная страница похожа на элемент управления, встроенный в страницу, вы можете добавить эти скрипты ближе к концу цикла страницы, сначала сработает элемент управления, а затем страница, так что ваша страница будет в порядке.
Другие советы
Вы могли бы повторно включить библиотеку jQuery на страницу, если она уже есть, она просто переопределит ее, если нет, она будет добавлена.