Добавить метод HtmlElement.HasAttribute

amyboose

Client
Регистрация
21.04.2016
Сообщения
2 312
Благодарностей
1 191
Баллы
113
Предлагаю добавить метод HtmlElement.HasAttribute(string attrName) по причине того, что следующий код выдает один и тот же результат и при присутствии атрибута и при его отсутствии:
C#:
var attrName = instance.ActiveTab.FindElementByXPath("//button[@id='recaptcha-submit']", 0)
                      .GetAttribute("disabled");
project.SendInfoToLog(attrName);
Я знаю как это решить и знаю почему зеннопостер такое выдает в коде и поэтому предлагаю простое решение.

Есть ещё вариант добавить свойство (самый правильный ООП подход)
C#:
bool? HtmlElement.Disabled { get; }
 
  • Спасибо
Реакции: SHILY и 6585_Лягуша

Castaneda

Client
Регистрация
24.05.2019
Сообщения
838
Благодарностей
282
Баллы
63
Регистрация
19.10.2018
Сообщения
188
Благодарностей
24
Баллы
18
Согласен нужный метод! Сам столкнулся с необходимостью использования.
 
Регистрация
05.06.2019
Сообщения
570
Благодарностей
453
Баллы
63
  • Спасибо
Реакции: SHILY
Регистрация
05.06.2019
Сообщения
570
Благодарностей
453
Баллы
63
C#:
var attrName = instance.ActiveTab.FindElementByXPath("//button[@id='recaptcha-submit']", 0)
                      .GetAttribute("disabled");
project.SendInfoToLog(attrName);
C#:
instance.ActiveTab.SetSourceText("<html><body><button id=\"button1\" type=\"button\" class=\"btn btn-md\" disabled=\"\"> Go </button>         <button id=\"button2\" type=\"button\" class=\"btn btn-md\"> Stop </button></body> </html>");

return instance.ActiveTab.FindElementByXPath("//button", 0).GetAttribute("disabled");
Если посмотреть на .GetAttribute из HAP, то там 2 параметра, 2ой, это подстановка значения в случае если NULL, можно так и указать NULL или "n\a" или string.Empty, возможно лучшее решение это добавить +перегрузку метода, где можно указать, что я хочу получить в случае NULL.

вот и думайте,
 

som

Client
Регистрация
27.04.2016
Сообщения
64
Благодарностей
9
Баллы
8

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