2014-01-03 3 views
3

Я хочу, чтобы удалить упоминая скрипты каждую страницу какПрименение сценария ко всем страницам в проекте

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.3/jquery-ui.min.js"></script> 

следует упомянуть в once.like общее место, чтобы обратиться к источнику. У меня есть фреймворк в 3.5. как я могу это достичь.

+4

Вы можете использовать [MasterPage] (HTTP : //msdn.microsoft.com/en-us/library/wtxbf3hh.ASPX) – Satpal

+0

Что такое 3.5? Каков контекст? Задайте вопрос, который понятен. –

+0

@ TheDarkKnight framework 3.5, OP использует ASP.net –

ответ

0

Вы можете сделать это, используя главную страницу. Демонстрация как

<master page> 
    <header> 
    //add script file here 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script> 
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.3/jquery-ui.min.js"></script> 
    //Other scripts 
    </header> 
    <content> 
    <Sub pages> 
    //Here you can debase your pages(like dynamically change pages), So the header script will referred from above header 
    </content> 
    <footer> 
    <//footer> 
    <master page> 

MSDN link for Master page

+0

Добавление главной страницы только для добавления ссылки на скрипт? –

1

создать новый проект для хранения всех файлов JavaScript, что нужно хочет по всему приложению. Вы можете вставить весь скрипт в DLL. Таким образом, если DLL развернута на веб-сайт, все файлы JavaScript также будут автоматически развернуты.

Вы можете ознакомиться с полным учебником, приведенным ниже.

Managing-Your-JavaScript-Library-in-ASP-NET

0

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

0

Добавление главной страницы - это хорошо.

Как альтернативный способ, вы можете достичь этого, создав базовую страницу и добавив скрипты из файла web.config в заголовок страницы, переопределив событие класса страницы OnInit.

Создать класс как BasePage унаследованный от System.Web.UI.Page как

public class BasePage : System.Web.UI.Page 
    { 
    } 

На всех страницах, где вы хотите, чтобы загрузить сценарии, наследуют их от BasePage

Ранее

public partial class _Default : System.Web.UI.Page 
    { 
    } 

Теперь

public partial class _Default : BasePage 
    { 
    } 

Упоминание файлы сценариев в одном месте - Web.Config ниже

<appSettings> 
    <add key="ScriptJquery" value="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"/> 
    <add key="ScriptJqueryUI" value="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"/> 
    </appSettings> 

В BasePage классе переопределить OnInit как показано ниже

public class BasePage : System.Web.UI.Page 
    { 

     protected override void OnInit(EventArgs e) 
     { 
      IEnumerable<string> scripts = ConfigurationManager.AppSettings.Keys.OfType<string>().Where(s => s.StartsWith("Script")); 
      foreach (string script in scripts) 
      { 
       Literal scriptTag = new Literal(); 
       scriptTag.Text = string.Format(@"<script src=""{0}"" type=""text/javascript""></script>",ConfigurationManager.AppSettings[script].ToString()); 
       Page.Header.Controls.Add(scriptTag); 
      } 

      base.OnInit(e); 
     } 
    } 
Смежные вопросы