Нарушение адресации в таблице если таблица с ошибками

Если вы обнаружили какие либо ошибки, недочеты и неудобства или другие незачеты в программе напишите нам об этом на этом форуме - мы бум исправлять
Ответить
pym933
Сообщения: 4
Зарегистрирован: 08 май 2015, 12:31

Нарушение адресации в таблице если таблица с ошибками

Сообщение pym933 » 08 май 2015, 12:44

Столкнулся с такой проблемой. Если на обработку поступает таблица у которой имеются ошибки т.е. в некоторых строках отсутствуют ячейки то при адресации ячеек осуществляется их уплотнение (на место отсутствующих ячеек ставятся ячейки из следующих строк) и соответственно нарушается корректная их адресация. При этом не возникает исключений в скрипте. Обнаружил вообще случайно при обработки огромного массива файлов с таблицами при использовании xpath.

Подскажите пож. имеется ли какая либо возможность отследить факт наличия не корректных строк в таблице?

Пример таблицы с нарушенной структурой:

Код: Выделить всё

<html> 
 <head></head> 
 <body> 
 <table> 
 <tbody> 
 
<tr id=tr_1> 
 <td id=0>test0</td> 
 <td id=1>test1</td> 
 <td id=2>test2</td> 
 <td id=3>test3</td> 
</tr> 

<tr id=tr_2> 
 <td id=0>test0</td> 
 <td id=1>test1</td> 
 <td id=2>test2</td> 
 <td id=3>test3</td> 
</tr> 

<tr id=tr_3> 
 <td id=0>test0</td> 
 <td id=2>test2</td> 
 <td id=3>test3</td> 
</tr> 

<tr id=tr_4> 
 <td id=0>test0</td> 
 <td id=1>test1</td> 
 <td id=2>test2</td> 
 <td id=3>test3</td> 
</tr> 

<tr id=tr_5> 
 <td id=0>test0</td> 
 <td id=1>test1</td> 
 <td id=3>test3</td> 
</tr> 

 </tbody> 
 </table> 
 </body> 
</html> 

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Нарушение адресации в таблице если таблица с ошибками

Сообщение bigfozzy » 08 май 2015, 16:37

можно получать ячейку по позиции - через http://humanemulator.net/objects/DOM/ta ... number.php и в скрипте отслеживать уплотнение таблицы или получать
http://humanemulator.net/objects/DOM/ta ... number.php и проверять что таблица не уплотнена.

Ответить