Определите, уже включен файл JavaScript через пользовательский контроль

StackOverflow https://stackoverflow.com/questions/2101884

Вопрос

Я строю несколько пользовательских элементов управления (ASCX) для моего веб -сайта, и некоторые из них очень похожи на то, что они делают. (Как примечание, я должен создать уникальные UC, даже если они похожи, потому что я создаю виджеты для нового Произвешенность Система темы сообщества). Например, два из них отличаются, но используют один и тот же код переднего интерфейса, чтобы создать панель 2 или 3 вкладки, где вы можете нажать на вкладку, и он изменяет данные ниже. У меня есть один файл JS для обработки этих вкладок и анимации. В настоящее время я динамически добавляю свою ссылку на файл JS в <head> из кода элемента управления пользователем через:

Literal jsFile = new Literal();
jsFile.Text = string.Format("<script src=\"{0}\"></script>", "/community/themes/test/js/tabbedCallout.js");
Page.Header.Controls.Add(jsFile);

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

Это было полезно?

Решение

Почему бы тебе не использовать Page.ClientScript.RegisterClientScriptBlock (Как описано здесь: http://msdn.microsoft.com/en-us/library/btf44dc9.aspx)?
Таким образом, вы можете добавить ключ к каждому вам нужен сценарий, и определить сценарий по его ключу!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top