Импорт HTML в TinyMCE с использованием ColdFusion - PullRequest
0 голосов
/ 24 марта 2010

Привет всем, я был бы признателен за указание в правильном направлении с проблемой, с которой я сталкиваюсь. Короче говоря, я работаю над приложением, которое будет создавать PDF с использованием TinyMCE и ColdFusion 8. У меня есть возможность создавать PDF, просто вводя текст, изображения и т. Д. Однако я хочу иметь возможность импортировать HTML-шаблон и вставьте его в TinyMCE.

По сути, у меня есть фрагмент кода каталога файлов, который позволяет мне просматривать мою папку «HTMLTemplates» и я могу выбрать HTML-документ. Теперь я хочу иметь возможность взять весь код из этого выбранного документа HTML и вставить его в мой ящик TinyMCE. Любые советы о том, как я мог бы сделать это, может быть?

Спасибо!

1 Ответ

1 голос
/ 25 марта 2010

Если я правильно вас понял, у вас уже есть плагин TinyMCE, который открывает окно и позволяет вам просматривать определенный каталог, используя существующую страницу cfm, которую вы отображаете во всплывающем окне. Правильно?

Если нет, вам следует начать с этого. Не уверен, насколько легко это сделать в текущей версии, но в более ранней версии TinyMCE я создал специальный плагин загрузки (необходимый для отслеживания разрешений безопасности сайта для текущего пользователя) довольно быстро.

Далее я вижу два быстрых способа передать содержимое файла сервера на клиентскую сторону:

  1. Сделайте его доступным через HTTP, чтобы вы могли сделать запрос GET и прочитать содержимое в переменную.
  2. Выведите его на страницу с помощью CF (скажем, при отправке формы, когда файл выбран) и захватите с помощью JavaScript.

Я лично попробовал второй вариант. После ввода текста в переменную вы можете поместить его в TinyMCE, используя его API.

Это может быть так же просто, как вывод экранированного текста в скрытый div с известным идентификатором и чтение его с помощью операций DOM (при условии, что вокруг есть cfoutput):

<div id="myTemplate">#HTMLEditFormat(myFileContents)#</div>

Также вы можете вывести текст непосредственно в переменную JavaScript (конечно, с точным экранированием), возможно, вот так.

<script type="text/javascript">
var text = '#HTMLEditFormat(myFileContents)#';
</script>

Самый продвинутый и, возможно, лучший по производительности (и, безусловно, более «крутой») способ - использовать концепцию тегов скрипта в качестве контейнера данных, например:

<script type="text/plain">
#HTMLEditFormat(myFileContents)#
</script>

В последний раз я видел это в блоге Наделя , я думаю. Прочитайте это, довольно интересно.

Надеюсь, это поможет.

...