Резюме. Я пытаюсь спросить: делаем ли мы это совершенно неверным путем или есть способ помешать Sharepoint или его многофункциональному редактору изменять добавляемый HTML?
Я был «брошен» в проект, вращающийся вокруг Sharepoint 2007 (поверьте мне, я не совсем доволен этим), и одна из вещей, которые ищут, - это способ использовать область с богатым контентом для пользователи должны помещать «богатый контент», а затем добавлять к контенту определенные «дополнения», такие как расширяемые области контента, диалоги и т. д.
Первоначальный план атаки заключался в том, чтобы добавить настраиваемую кнопку на панель инструментов редактора расширенного контента Sharepoint, у нас есть код для этого, и он работает и т. Д., И прикрепить обработчики событий javascript к определенным элементам - что также работает - до определенной точки.
Одна вещь, которую мы делаем, - это использование элемента <a>
и последующего <div>
для настройки диалогового окна (используя jQuery UI для волшебства). Когда пользователь нажимает кнопку «Вставить диалог», в редактор вставляется следующее:
<a href="#" class="dialog-trigger">Click me to open the dialog</a>
<div class="dialog-content">
this is some dialog content etc
</div>
Когда страница загружается, мы подключаемся к методу щелчка .dialog-trigger, берем родственника элемента a
, который является .dialog-content
, и настраиваем его как диалог. Это «работает» до тех пор, пока вы ничего не хотите редактировать.
Я обнаружил, что как только вы начинаете редактировать содержимое в .dialog-content
DIV, редактор расширенного содержимого начинает изменять HTML, например, добавляя список в следующем HTML:
<li><div class=dialog-content>Some list item</div></li>
<li><div class=dialog-content>Some list item 2</div></li>
<li><div class=dialog-content>Another list item</div></li>
Как вы понимаете, это ломает то, что мы пытаемся сделать.
Подводя итог тому, о чем я пытаюсь спросить, идем ли мы по этому поводу совершенно неправильно, или есть способ помешать Sharepoint или его богатому редактору изменять добавляемый HTML?