Как правильно включить библиотеки JS (jqueryUI, плагины jquery) в модуль DNN 5? - PullRequest
0 голосов
/ 11 ноября 2010

Я включаю jquery в свой модуль с DotNetNuke.Framework.jQuery.RequestRegistration();, и он работает как ожидалось.

Другие сценарии, которые я включаю в свой портал DNN через Настройки страницы / Дополнительные настройки / Теги заголовка страницы. Они также загружаются, но работают не так, как ожидалось.

В моем случае я хочу иметь вкладки в одном из моих модулей dnn, и я использую jqueryUI для этого. Если я тестирую этот модуль за пределами DNN, он работает как надо, но при установке в DNN что-то идет не так. Я создал вкладки, но не могу переключиться между ними. На самом деле я вижу все содержимое, которое должно быть в отдельных вкладках на одной странице.

alt text

Это мой код Js из файла module.ascx.

<script type="text/javascript">
    jQuery(document).ready(function ($) {
        $("#<%= pnlTabs.ClientID %>").tabs();
    });
</script>

как это исправить? Я думаю, что проблема в том, что все эти разные JS-библиотеки смешиваются. Итак, как правильно включить другие библиотеки JS в модуль DNN.


EDIT: Я нашел проблему. Вы можете помочь это исправить?

<li><a href="DesktopModules/OsControl/#dnn_ctr380_osControl_pnlProcesses">Processes</a></li>

<div id="dnn_ctr380_OsControl_pnlProcesses" style="text-align:left;"> 

Проблема в том, что DNN добавляет «DesktopModules / OsControl /» к ссылке в элементе «li». Как предотвратить это или как-то иначе?


EDIT2:

<asp:BulletedList ID="BulletedList1" runat="server" BulletStyle="NotSet" DisplayMode="HyperLink">
    <asp:ListItem Value="#OsControl_pnlProcesses">Processes</asp:ListItem>
    <asp:ListItem Value="#OsControl_pnlServices">Services</asp:ListItem>
    <asp:ListItem Value="#OsControl_pnlEvents">Events</asp:ListItem>
</asp:BulletedList>

Так я создаю ссылки.

Ответы [ 2 ]

1 голос
/ 11 ноября 2010

Я бы сначала предложил пройти через эту артиллерию

Способ добавления ссылок на jQuery и jQuery UI может вызвать проблемы, пожалуйста, убедитесь, что jQuery.js добавлен до jQuery.ui.js

Если вы считаете, что почти вся страница требует jQuery, вы можете перенести свой регистрационный код jQuery на скин.

Последнее, что нужно добавить <a href="http://ajaxian.com/archives/jquery-logging" rel="nofollow">console logging</a>, чтобы увидеть сообщения журнала в консоли Firebug, чтобы вы могли быстро отследить проблемы, связанные со ссылками на сценарии

0 голосов
/ 12 ноября 2010

Следуйте инструкциям ниже, и все будет в порядке:

  1. Войдите в систему как HOST, перейдите в Host> Настройки портала, разверните узел Настройки jQuery и установите флажок «Использовать версию Hosted jQuery»
  2. Добавить все остальные ссылки js в файл Default.aspx
...