|
Работа с HTML документом в Управляемом приложении (УФ) | ☑ | ||
---|---|---|---|---|
0
mvlad
13.04.16
✎
14:17
|
Есть такая, многим известная, обработка проверки орфографии SpellChecker1С.epf, которая была написана под обычное приложение.
В ней используется редактор TinyMCE и API Яндекс.Спеллера. Внутри обработки в макетах хранится zip-файл, который представляет собой иерархически структурированный набор файлов и папок, так сказать мини сайт (там в основном файлы скриптов .js, но есть и htm и css и др.). На форме обработки расположено поле с типом "Поле HTML документа". Суть работы обработки следующая - при ее открытии происходит создание в темповом каталоге винды папки TinyMCE, в него помещается zip-файл и он распаковывается, формируя весь иерархический набор файлов и папок. Далее создается программно файл temp.html с таким кодом: <HTML><HEAD><meta http-equiv="Content-Type" content="text/html; charset=windows-1251" content="no-cache"> <script type="text/javascript" src="tinyMCE/jscripts/tiny_mce.js"></script> <!-- TinyMCE --> <script type="text/javascript"> tinyMCE.init({ // General options mode : "textareas", theme : "advanced", plugins : "save,spellchecker", entity_encoding : "raw", force_br_newlines : true, force_p_newlines : false, language : "ru", // Spellchecker spellchecker_languages : "+Russian=ru,Ukrainian=uk,English=en", spellchecker_rpc_url : "http://speller.yandex.net/services/tinyspell", }); </script> <!-- /TinyMCE --> </HEAD><BODY><FONT FACE="Arial" SIZE="-1"> <form method="\" action="\" onsubmit="return false;"> <textarea id="elm1" name="elm1" style="width:100%;height:100%"> </textarea> </FONT></BODY></HTML> (!!! этот код я укоротил, чтобы показать саму суть, на самом деле он немного больше и шире !!!) Этот файл temp.html помещается в созданный ранее каталог TinyMCE. Далее для элемента формы с типом "Поле HTML документа" вызывается метод Перейти(), в параметре которого указывается полный путь к файлу temp.html и всё прекрасно работает. Я решил переделать эту обработку под УФ. В управляемой форме для создания элемента с типом "Поле HTML документа" нужно связывать его с реквизитом формы с типом "Строка". Также в УФ для ПолеHTMLдокумента нет метода Перейти() и html-код нужно просто присваивать реквизиту, связанному с этим элементом формы. Но, присвоив вышеприведенный код html, обработка не заработала, т.к. в приведенном html-коде выше видно, что во второй строке: <script type="text/javascript" src="tinyMCE/jscripts/tiny_mce.js"></script> используется относительный путь. Но даже вставив весь код этого скрипта tiny_mce.js в код html, обработка всё равно не работает, т.к. она не понимает где лежит остальной набор файлов и папок этого мини-сайта. И вот мой вопрос - как же всё таки заставить на УФ эту обработку работать? При попытке сделать вот так: Элементы.ПолеHTMLдокумента1.Документ.URL = "file:///бла бла бла/TinyMCE/temp.html"; появляется сообщение "Доступ запрещен". |
|||
1
sash-ml
13.04.16
✎
14:37
|
серверная или файловая?
|
|||
2
mvlad
13.04.16
✎
14:45
|
тестирую на файловой. а в реале будет серверная.
|
|||
3
mvlad
13.04.16
✎
17:52
|
подниму.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |