2015-05-07 3 views
1

Нужно нажать кнопку «Создать». Как я могу продолжить с ним, так как он не отображается/не отображается? Это беспокоит код-Как нажимать на элемент, который скрыт/не отображается в selenium webdriver?

<li tabindex="-1" class="ms-crm-CommandBarItem ms-crm-CommandBar-Menu ms-crm-CommandBar-Button" title="NewCreate a new Account record." id="account|NoRelationship|HomePageGrid|Mscrm.HomepageGrid.account.NewRecord" command="account|NoRelationship|HomePageGrid|Mscrm.NewRecordFromGrid" style="white-space: pre-line; display: inline-block;"><span tabindex="-1" class="ms-crm-Menu-Label ms-crm-CommandBar-Button" style="max-width:200px"><a tabindex="0" class="ms-crm-Menu-Label" onclick="return false"><img tabindex="-1" class="ms-crm-ImageStrip-New_16 ms-crm-commandbar-image16by16" src="/_imgs/imagestrips/transparent_spacer.gif" style="vertical-align:top" alt="New"> <span tabindex="-1" class="ms-crm-CommandBar-Menu" style="max-width:150px" command="account|NoRelationship|HomePageGrid|Mscrm.NewRecordFromGrid"> New </span> </a> </span> </li> 

ответ

1

Так, она спрятана единственный способ, чтобы щелкнуть элемент, чтобы выполнить javascript и выполнить щелчок яваскрипта исполнителя. Я предположил, что вы используете Selenium java binding, так как не упомянули об этом.

//Find the element to click on. 
//Selenium will find the element without any issue 
//since it is present in the DOM 
//I assumed you want to click on the <code>span</code> with text New 
//since there is no actual button 
WebElement element = driver.findElement(By.cssSelector("[title='NewCreate a new Account record.']>span>a>span")); 
JavascriptExecutor jsExecutor = (JavascriptExecutor)driver; 
jsExecutor.executeScript("arguments[0].click();", element); 
+0

Пробовал это раньше, @Saifur, но не повезло. Тем не менее это не щелчок. – rjt

+0

Какую ошибку вы получаете? Можете ли вы предоставить стек? – Saifur

+0

Ошибка, @Saifur, она просто не нажимает. На консоли нет ошибок. Сейчас у меня заканчиваются варианты. – rjt

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