Не могу проверить существование htmlElement

tka4enko.ilya

Client
Регистрация
20.10.2015
Сообщения
61
Реакции
9
Баллы
8
в c# коде получаю дочерний элемент хтмлэлемента методом FindChildByAttribute
но почему то свойство IsVoid у дочернего элемента true, хотя он присутствует на странице и я могу взять его атрибуты. Как еще проверить существование thmlelement? Раньше проверял только свойством IsVoid
 
в c# коде получаю дочерний элемент хтмлэлемента методом FindChildByAttribute
но почему то свойство IsVoid у дочернего элемента true, хотя он присутствует на странице и я могу взять его атрибуты. Как еще проверить существование thmlelement? Раньше проверял только свойством IsVoid
та тру это же да, или исвоид по другому работает?
 
да оно и так работает. элемент получаю.
Вот только в коде убедится что он точно есть не могу.
IsVoid = true;
 
пока единственная мысль, только брать OuterHtml и смотреть пустой он или нет. Но как то не по феншую это
 
Вот только в коде убедится что он точно есть не могу.
IsVoid = true;
а что, его нет а показывает тру?
я так понимаю, надо писать подобно этому:
HtmlElement he = tab.FindElementById("main");
HtmlElement heCh = he.FindChildByAttribute("input:checkbox", "fulltag", "input:checkbox", "text", 0);

и делать проверку на содержание heCh
 
я проверял так
if (!heCh.IsVoid)
{
// ЭЛЕМЕНТА нет на странице
return null;
}

или так некорректно проверять?
 
я проверял так
if (!heCh.IsVoid)
{
// ЭЛЕМЕНТА нет на странице
return null;
}

или так некорректно проверять?
точно не знаю, что оно возвращает, если нет элемента, но попробуйте:
1. возможно оно находит другой дочерний элемент, который существует
2. попробуйте , если есть, то вернуть например 1, а далее сравните, если вернуло 1 значит есть, если что-то другое, то нет.
 
точно не знаю, что оно возвращает, если нет элемента, но попробуйте:
1. возможно оно находит другой дочерний элемент, который существует
ну тогда бы IsVoid == false
2. попробуйте , если есть, то вернуть например 1, а далее сравните, если вернуло 1 значит есть, если что-то другое, то нет.
не понял мысль
 
это же неправильно. если heCh.IsVoid == true значит не существует.
спасибо.
буду через contais проверять содержимое outerhtml
 
  • Оценить
Реакции: arhip1985
это же неправильно. если heCh.IsVoid == true значит не существует.
спасибо.
буду через contais проверять содержимое outerhtml
да, вы правы, в справке зенно так и написано. а что элемент есть, а оно всё равно возвращает тру?))) просто не особо знаком с сишарпом, в пхп если is_array , то когда есть сарай, то да, когда нет, то другое. думал по этой аналогии.

вот ещё нашёл - Значение true, если возвращаемый тип — void; в противном случае — значение false.
просто толком не знал, что такое void.
 
Последнее редактирование:

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)