2016-04-19 84 views
0

我試圖操作的元素是一個下拉自動完成文本框。然而,而不會是一個普通的文本框的這個:在Selenium WebDriver中,如何找到具有DOM ID和無className的元素?

<input class="rad-input acInput float_left edScheduleList 
ui-autocomplete-input" style="width: 234px; font-size: 12px; 
font-family: Segoe UI, Arial, Times New Roman; padding-left: 4px; 
line-height: 12px;" placeholder="Select Schedule..." data-bind="click: _editorOverlay.Overlay.CustomRecVM.scheduleData.ac.dropdownArrowClick, 
    enable: _editorOverlay.Overlay.CustomRecVM.scheduleEnabled, 
    jqAuto: { autoFocus: true }, 
    jqAutoSource: editorOverlay.Overlay.CustomRecVM.scheduleData.list, 
    jqAutoQuery: editorOverlay.Overlay.CustomRecVM.scheduleData.GetList, 
    jqAutoValue: _editorOverlay.Overlay.CustomRecVM.scheduleData.selectedID, 
    jqAutoSourceLabel: 'Text', 
    jqAutoSourceInputValue: 'Text', 
    jqAutoSourceValue: 'Value', 
    jqChange: _editorOverlay.Overlay.CustomRecVM.ScheduleIndexChanged" id="domId08015369399681067" autocomplete="off"> 

我不能ID找到它,cssSelector,XPath的,類名,名稱或類。我嘗試過部分文本或者包含文本,但仍然沒有找到。我爲此使用Java。

+0

這將有助於看到你已經嘗試過但沒有工作。 –

+0

這是一個獨特的div,你可以使用它來找到它? css選擇器像div#uniqueId>輸入 –

+0

這是我得到的選擇器:#domId0929060823760302,這是我得到的xpath:// * [@ id =「domId0929060823760302」]當我檢查使用瀏覽器。我也嘗試使用id domId08015369399681067。 –

回答

0

我發現我可以使用cssSelector作爲類名。我對Selenium還是比較陌生,不知道我可以將類名和cssSelector方法結合起來。上面的元素可以用下面的代碼來操作:

driver.findElement(By.cssSelector 
      ("input[class='rad-input acInput float_left edScheduleList ui-autocomplete-input']")); 

感謝幫助們,班級名字真的讓我失望。我想,因爲選擇者回來了,我必須以不同的方式對待它。

相關問題