C# Как нажать на кнопку, и учесть InnerText?

Valiksim

Client
Регистрация
14.04.2012
Сообщения
1 344
Реакции
300
Баллы
83
Не могу сообразить как заставить прогу клацнуть на кнопку, с учётом содержимого в InnerText?
Вот этот код работает
Код:
Развернуть Свернуть Копировать
Tab1.FindElementByXPath(".//div[@class='controls']/button[@class='flat_button button_small button_wide']", 0).Click();
Клик срабатывает, НО, всего один раз, надо дальше найти уникальный элемент, но уникальность его будет только по InnerText, который до нажатия один, после нажатия другой
 
Если точно известен всё содержимое InnerText:
C#:
Развернуть Свернуть Копировать
Tab1.FindElementByXPath(".//div[@class='controls']/button[text()='нужный ИннерТекст']", 0).Click();
Если известна часть содержимого InnerText:
C#:
Развернуть Свернуть Копировать
Tab1.FindElementByXPath(".//div[@class='controls']/button[contains(text(), 'часть нужного ИннерТекста')]", 0).Click();
 
  • Оценить
Реакции: Valiksim
Работает код, спасибо, но задачу не решает, к следующей кнопке не переходит
Видимо придётся собирать все элементы и клацать по списку. Иначе, не знаю как сделать?
 
Последнее редактирование:
Хорошо бы пример или более подробное объяснение, так пока не совсем ясно что именно требуется.

Если нажатая в первый раз кнопка остаётся на странице, то да, следующий клик этим кодом будет по первой, так как номер совпадения стоит 0.
Либо создавать коллекцию с кнопками и перебрать её с кликом по каждому элементу, либо просто зациклить код выше, заменив номер совпадения на переменную-счётчик:
2017-02-22_19-11-24.png
 
  • Оценить
Реакции: Valiksim
Так работает. Меняю номер и иду к следующему элементу. Спасибо большое, как-то не подумал о таком варианте
 

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