Имя: Пароль:
1C
1С v8
как добраться к элементу HTML
0 DES
 
16.10.20
23:02
Вызвал
IE_COMОбъект = Новый COMОбъект("InternetExplorer.Application");
получил страницу, добрался до элемента
rez = IE_doc.getElementByID("cpasContent");
Имею:
<div id="cpasContent">
    <!--boxa2 -->
    <div style="padding: 0px 10px;">
        <div>        
           <table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tbody><tr>
                        <td class="cpasf" valign="top" style="text-align: center; padding-right: 10px; padding-bottom: 0px;">IDNP</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td width="1" valign="top" style="text-align: center; padding-right: 10px;"><img width="48" height="48" src="img/cpas_ico1.png" border="0"></td>
                        <td class="cpasidnp">
                            2002005
                        </td>
                    </tr>
                    <tr>
                        <td valign="top" style="text-align: center;" colspan="2">
                            <div style="margin: 10px 0px; height: 1px; border-top-color: rgb(204, 204, 204); border-top-width: 1px; border-top-style: dashed;"></div>
                        </td>
                    </tr>
                    <tr>
                        <td class="cpasf" valign="top" style="text-align: center; padding-right: 10px; padding-bottom: 0px;">CPAS</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td valign="top" style="text-align: center; padding-right: 10px;"><img width="48" height="48" src="img/cpas_ico2.png">
                        </td>
                        <td class="cpasrez">

                            
                                    _Эта_строка_текста_ <br>

                                
                        </td>
                    </tr>
                </tbody></table>            
        </div>
    </div>
    <!--boxa2 -->
</div>

как обратиться к элементу содержащему "_Эта_строка_текста_"
1 acht
 
16.10.20
23:15
(0) Сильно зависит от структуры твоего документа в целом.
Попробуй, что-ли, rez.querySelector(".cpasrez")
2 DES
 
16.10.20
23:22
(1) СПС
пошло rez.querySelector(".cpasrez").innerText
3 DES
 
16.10.20
23:41
странно.
под отладчиком
cpasContent.querySelector(".cpasrez") - дает результат
без отладчика - неопределено.
4 Юрий Лазаренко
 
17.10.20
00:25
(3) Это потому что с отладчиком у тебя документ успевает загрузиться, а без отладчика не успевает. Ты селектором пытаешься получить элемент, а его ещё нет.
5 Юрий Лазаренко
 
17.10.20
00:26
(3) Попробуй запустить загрузку документа, а потом через обработчик ожидания запусти процедуру, которая получает элемент. Так должно прокатить.
6 acht
 
17.10.20
09:56
(3) Надо ждать окончания формирования DOM дерева. При использовании InternetExplorer.Application из 1С можно попробовать или ДобавитьОбработчик на DocumentComplete или тупо ждать в цикле или обработчике ожидания изменения значения атрибута ReadyState. Как только получишь число 4 - документ готов.