Копирование текста в буфер обмена на Веб-Клиенте

Публикация № 1216912

Разработка - Обработки - Универсальные обработки

буфер clipboard ВебКлиент

Пример реализации, как можно скопировать текст в буфер обмена на тонком и веб-клиентах.
  1. Через меню "Файл - Открыть" выберите файл внешней обработки.
  2. Укажите свой каталог открытого ресурса apache на сервере
  3. Введите текст
  4. Нажмите на кнопку "В буфер"

После этого откроется страница браузера в которой поместится набранный текст:

Однако, если Вы заметили, тег <а> не передался. Спецсимволы типа & тоже передаваться не будут. Если планируется всё-таки передавать в буфер обмена теги HTML языка, то в javaskript, который размещён в шаблоне нужно вместо строки 

$('#div1').html(s);

написать строку

$('#div1').text(s);

Но при этом придётся отказаться от переноса строк.

Так что тут Вам выбирать, для каких целей использовать предложенный механизм.

После нажатия на кнопку "Закрыть" произойдёт непосредственно помещение текста в буфер обмена и закрытие вкладки браузера.

Без кнопки "Закрыть" реализовать не получилось. Если выполнять

$("#button1").click();

то в буфер ничего не помещается.

Тестировалось на платформе 1С 8.3.16.1148 и браузере Google Chrome 80.0.3987.149.

Скачать файлы

Наименование Файл Версия Размер
Копировать текст в буфер обмена на Веб-Клиенте:
.epf 9,97Kb
27.03.20
0
.epf 1.0 9,97Kb Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. swenzik 28.03.20 18:42 Сейчас в теме
я может чего-то не понял, но зачем тут апач и хром? можно сделать кнопку на форме с вызовом

&НаКлиенте
Процедура СкопироватьНомерВБуферОбмена(Команда)
	
	HTMLОбъект = Новый COMОбъект("htmlfile");
	HTMLОбъект.ParentWindow.ClipboardData.Setdata("Text", СокрЛП(Объект.КопируемыйТекст));
	
КонецПроцедуры
2. EvgeTrofi 12 28.03.20 19:55 Сейчас в теме
(1) Ваша конструкция будет работать только на тонком и толстом клиенте.
На ВебКлиенте и тем более МобильномКлиенте COM-объекты ActiveX не доступны.
Обсуждение проблемы здесь
3. Steelvan 28.03.20 21:46 Сейчас в теме
(1) Сие работать может только в винде.
А обозреватель для веб-клиента может запускаться и в других операционных системах, где нет COM.

Автор пытается предложить межплатформенное и межобозревательное решение, если я правильно понимаю.
4. swenzik 28.03.20 21:49 Сейчас в теме
(3) COMОбъект можно заменить на невидимый реквизит с видом "Поле HTML документа", ща попробую
5. EvgeTrofi 12 29.03.20 04:37 Сейчас в теме
(4) Вы не поверите, но
Поле HTML документа
тоже НЕ доступно на ВебКлиенте, потому что это тоже COM-объект.
6. Xershi 953 29.03.20 12:37 Сейчас в теме
(5) до 8.3.14 так и было. С появлением вебкита ситуация поменялась.
Оставьте свое сообщение

См. также

Публикаций не найдено

Попробуйте расширить область поиска, проверьте поисковый запрос и повторите попытку.

Или закажите индивидуальную разработку вашего решения.

Создать заказ на разработку