Тип: Строка. Этот атрибут определяет набор ячеек, для которых информация заголовка устанавливается текущим заголовком.
Полное описание, параметры и ограничения
ЭлементЯчейкаТаблицыHTML.ОбластьВидимости (HTMLTableCellElement.Scope)
ЭлементЯчейкаТаблицыHTML (HTMLTableCellElement)
ОбластьВидимости (Scope)
Доступен, начиная с версии 8.2.
Использование:
Чтение и запись.
Описание:
Тип: Строка.
Этот атрибут определяет набор ячеек, для которых информация заголовка устанавливается текущим заголовком.
Доступность:
Тонкий клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Объединение ячеек не удаляет соседние данные автоматически
Меняем colspan и rowspan на глубокой копии таблицы. Исходный заказ сохраняет две ячейки в строке и оба товара.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используйте учебную базу платформы 8.5.1.1343 и серверную процедуру учебного общего модуля. Каждый пример выполняйте отдельно.
Все данные заказа вымышлены и находятся в строке. ЧтениеHTML разбирает данные, но не является браузером: форма не отправляется, ссылки не открываются, картинки не скачиваются.
Никакие файлы, адреса сайтов, токены и документы информационной базы не нужны. Не заменяйте учебную строку произвольным внешним HTML без отдельной проверки безопасности.
Индексы коллекций начинаются с нуля. Перед обращением к найденному узлу проверяйте Неопределено; перед специальными свойствами элемента проверяйте его тип.
HTML = "<html><head><title>Учебный заказ</title><meta id='meta' name='description' content='Вымышленный заказ'></head>
|<body id='body'><p id='note'>Заказ существует только в памяти</p><pre id='code'>A-01: 3
|B-02: 1</pre>
|<form id='order' name='order' action='' method='get'>
|<input id='customer' name='customer' type='text' value='Учебный покупатель'>
|<input id='accepted' name='accepted' type='checkbox' value='yes'>
|<button id='preview' name='preview' type='button' value='preview'>Предпросмотр</button></form>
|<table id='items' summary='Книга и ручка'><caption id='caption'>Товары</caption><colgroup><col id='column'></colgroup><tbody>
|<tr id='book'><td id='book-name'>Книга</td><td>3</td></tr><tr id='pen'><td>Ручка</td><td>1</td></tr>
|</tbody></table><a id='help' name='help' href='#note'>Пояснение</a><img id='logo' alt='Учебная картинка без источника'>
|</body></html>";
Чтение = Новый ЧтениеHTML;
Чтение.УстановитьСтроку(HTML);
Попытка
Построитель = Новый ПостроительDOM;
Документ = Построитель.Прочитать(Чтение);
Исключение
Чтение.Закрыть();
ВызватьИсключение;
КонецПопытки;
Чтение.Закрыть();
Если ТипЗнч(Документ) <> Тип("ДокументHTML") Тогда
ВызватьИсключение "Ожидался ДокументHTML, а не XML-документ";
КонецЕсли;
Таблица = Документ.ПолучитьЭлементПоИдентификатору("items");
Если Таблица = Неопределено Тогда
ВызватьИсключение "Не найден учебный элемент items";
КонецЕсли;
Если ТипЗнч(Таблица) <> Тип("ЭлементТаблицаHTML") Тогда
ВызватьИсключение "Неожиданный тип учебного элемента items";
КонецЕсли;
Копия = Таблица.КлонироватьУзел(Истина);
Строки = Копия.ПолучитьСтроки();
Ячейка = Строки.Элемент(0).Ячейки.Элемент(0);
Если ТипЗнч(Ячейка) <> Тип("ЭлементЯчейкаТаблицыHTML") Тогда
ВызватьИсключение "Ожидалась ячейка собственной копии";
КонецЕсли;
Ячейка.ОбъединениеКолонок = 2;
Ячейка.ОбъединениеСтрок = 1;
Ячейка.Ось = "product";
Ячейка.Сокращение = "Товар";
Ячейка.Заголовки = "";
Ячейка.ОбластьВидимости = "";
Сообщить(Ячейка.ОбъединениеКолонок = 2);
Сообщить(Строки.Элемент(0).Ячейки.Количество() = 2);
Сообщить(Таблица.ПолучитьСтроки().Элемент(0).Ячейки.Количество() = 2);
Сообщить(Копия.РодительскийУзел = Неопределено);Разбор по шагам
Глубокое клонирование делает отдельное дерево, пока ещё не вставленное в документ.
ОбъединениеКолонок задаёт занимаемое место при отображении, не выполняет удаление следующего td.
Ось и Сокращение задают дополнительное описание; пустые Заголовки не ссылаются на несуществующий th.
Как проверить результат
Четыре проверки Истина: colspan 2, по две ячейки у копии и оригинала, копия не вставлена.
Такую промежуточную копию не используйте как готовую таблицу: сначала определите, куда перенести данные второй ячейки.
Ожидаемый результат
Понятно отличие визуального объединения от структурного изменения таблицы.
На что обратить внимание
Слепой colspan поверх заполненных соседних ячеек создаёт неправильную раскладку.
scope и headers имеют смысл при настоящих заголовочных ячейках; пример не выдаёт пустые значения за полную доступность.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.