2014-10-20 2 views
1

Я новичок в Selenium, и я не знаю, есть ли способ поиска по методу javascript или onclick.Selenium WebDrive - Найти элемент по Javascript или onclick

У меня есть следующий HTML

... 
<td> 
<input id="Disable" class="buttons" type="button" name="Disable" onclick="javascript:actionPost('Edit', '1')" value="Disable"> 
</td> 
<td> 
<input id="Edit" class="buttons" type="button" name="Edit" onclick="javascript:actionPost('Edit', 'LDAP_Test')" value="Edit"> 
</td> 
.... 

Единственное отличие заключается в команде JavaScript. Первая команда имеет параметр «1», а вторая - «LDAP_Test».

Как я могу сказать Селену щелкнуть по второй кнопке, например. Я не могу изменить файл HTML. Его следует использовать как есть.

Заранее спасибо.

ответ

0

Ну, так как у него есть идентификатор, вам не нужно соответствовать атрибуту onclick. Вы можете сделать:

driver.findElement(By.cssSelector("input#Edit")).click(); 

Или, если ID действительно динамичным, вы могли бы соответствовать по атрибуту onclick:

driver.findElement(By.cssSelector("input[onclick*='actionPost'][onclick*='LDAP_Test']")).click(); 
+0

Спасибо так много. Это исправить мою проблему. – takov

Смежные вопросы