9.
Збянтэжаны Саўка
245
26.05.10 17:44
Сейчас в теме
Посмотрел код и увы - он совершенно не соответствует громкому заголовку "Dom-модель Html", т.к. там из DOM используется только одна строка обращения к HTML-документу: getElementsByTagName("*").
А такие свойства документа как table и ему подчиненные rows и cells вообще не используются :(
Можно было бы улучшить код ну хотя бы примерно так:
Для каждого Элемент из ТелоДокумента.getElementsByTagName("*") Цикл
ИмяТега = Элемент.tagName;
ТекстТега = СокрЛП(Элемент.outerText);
Если ИмяТега = "TABLE" Тогда
Rows = Элемент.Rows();
ВсегоСтрок = Элемент.Rows().length();
// Цикл по строкам таблицы
Для каждого стр из Rows Цикл
Текст = СокрЛП(стр.outerText);
Cells = стр.Cells();
ВсегоКол = стр.Cells().length();
// Цикл по столбцам таблицы
Для каждого эл Из Cells Цикл
ИмяТегаКол = Эл.tagName;
Текст = СокрЛП(эл.outerText);
// работа с ячейкой таблицы...
КонецЦикла; // каждого эл Из Cells
КонецЦикла; // каждого стр из Rows
КонецЕсли; // ИмяТега = "TABLE"
КонецЦикла;
ну конечно же здесь путей для оптимизации море ... лень все описывать, сорри
но плюс я все же поставлю за ... идею
У меня есть рабочая обработка сходной направленности на выдирание данных по тел. разговорам из отчета HTML в ТЗ, но направление ее слишком узкое, так что выкладывать ее нет смысла имхо.
Да, честно говоря и некогда да и лень заморачиваться с выкладкой, т.к. гораздо легче написать код, чем описание к нему: "чукча не писатель, чукча читатель" :)
Прикрепленные файлы: