Запуск JavaScript в 1С 8.3.15

1. Artem1405 25 21.09.19 01:13 Сейчас в теме +1 $m
На платформе 8.3.15 не работает код:
Элементы.Карта.Документ.parentWindow.....(ВызовФункции);
В 8.3.12 работает,


В этой ветке нашел обработку которая работает на старой платформе.

HELP!!! Как заставить работать на 8.3.15?
Прикрепленные файлы:
ТекстHTML_Пример.epf
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Artem1405 25 21.09.19 01:15 Сейчас в теме
Код из обработки который не работает:
// Инициализирум текст скрипта
// "ТекстHTML" - строковый реквизит формы, с которым связано поле HTML документа
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    ТекстHTML = ПолучитьТекстHTML();
    
КонецПроцедуры

// Обработчик события "ДокументСформирован" поля HTML документа на форме
// Вызываем функцию javascript из 1С
&НаКлиенте
Процедура ДокументHTMLДокументСформирован(Элемент)
    
    // Инициализируем переменную "Form1C" в javascript контекстом формы 1С 
    // для возможности вызова функций 1С из javascript
    Документ = Элементы.ДокументHTML.Документ;
    Документ.parentWindow.SetForm1C(ЭтаФорма);
    
КонецПроцедуры

// Обработчик команды (кнопки на форме 1С). Вызывает функцию javascript из 1С 
&НаКлиенте
Процедура ВызватьСкрипт(Команда)
    
    Документ = Элементы.ДокументHTML.Документ;
    Документ.parentWindow.zako(ЭтаФорма);
    
КонецПроцедуры


// Функция 1С, для вызывов из javascript (по нажатию кнопки "1С" на поле HTML документа)
&НаКлиенте
Функция ВывестиСообщение(ТекстСообщения) Экспорт

    Сообщить(ТекстСообщения);

КонецФункции

&НаСервере
Функция ПолучитьТекстHTML()

    Текст = "
    |<ht ml> 
    |<head> 
    |<title>Мой заголовок</title> 
    |</head>  
    |<body>
    |<sc ript type=""text/javascript""> 
    |
    |var Form1C;
    |
    |function SetForm1C(aForm1C)
    |{
    |    Form1C = aForm1C;
    |};
    |
    |// Для вызова 1С из скрипта
    |function Message1C(MessageText)
    |{
    |    Form1C.ВывестиСообщение(MessageText);
    |};
    |
    |// Для вызова из 1С
    |function zako() 
    |{ 
    |    return alert( 'привет, мир!' ); 
    |}; 
    |
    |</sc ript> 
    |
    |<!-- А это вызов функции 1С из скрипта /> -->
    |<input type = ""button"" on click = ""Message1C('пока, мир!')"" value = ""1С"" />
    |
    |</body> 
    |</html>
    |";    
    
    Возврат Текст;

КонецФункции
Показать
3. acces969 344 21.09.19 06:06 Сейчас в теме
"Parent window" доступно в win7, в win10 уже нет. В win8 не знаю, на скорее всего тоже. Сам напоролся на это недавно.
4. Artem1405 25 21.09.19 07:51 Сейчас в теме
(3) Врядли это может зависеть от операционки.
5. Artem1405 25 21.09.19 07:53 Сейчас в теме
Все проблема в переходе новой платформы с модели IE на модель Webkit.
Вместо parentWindow надо использовать defaultView.

Нашел вот тут http://catalog.mista.ru/public/398366/
Kazaams; eugeniezheludkov; testnv0; acces969; +4 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот