元素应该是“选择”但是“div”在selenium中出错

时间:2016-06-29 06:45:53

标签: html css selenium

以下是HTML代码,我正在尝试选择“选择客户”下拉列表。

<div id="createTasksPopup_customerSelector" class="customerOrProjectSelector selectorWithPlaceholderContainer at-dropdown-list-btn-ct notSelected">
    <table id="ext-comp-1057" class="x-btn-wrap x-btn at-dropdown-list-btn x-btn-over x-btn-focus" cellspacing="0" cellpadding="0" border="0" style="width: auto;">
       <tbody>
             <tr id="ext-gen397" class=" x-btn-with-menu">
                  <td class="x-btn-left">
                      <td class="x-btn-center">
                          <em unselectable="on">
                              <button id="ext-gen391" class="x-btn-text" type="button">- Select Customer -</button>
                          </em>
                      </td>
                 <td class="x-btn-right">
            </tr>
        </tbody>
    </table>
</div>

图片 enter image description here

3 个答案:

答案 0 :(得分:1)

当我们使用Select命令选择不是使用“select”标记构建的下拉列表时,通常会发生此异常。

您可以尝试使用sendkeys选择下拉列表,只需在sendkeys中显示选项的显示文本。

如果以上操作不起作用,请点击下拉列表再次点击所需选项。

如果是自动完成下拉列表,则单击该下拉列表输入框,然后选择带有小睡眠的char的senkeys char,以便显示所需的选项。

答案 1 :(得分:0)

首先检查:

在你的UI / FrontEnd中使用&#34;选择&#34;方法与否?

如果没有,那么使用下面的代码片段,点击下拉菜单并选择值。

WebElement selectMyElement = driver.findElement(this.getObject(By.Id("Id of Your DropDown"))); 
selectMyElement.click();

Actions keyDown = new Actions(driver);
keyDown.sendKeys(Keys.chord(Keys.DOWN, Keys.DOWN)).perform();

答案 2 :(得分:0)

WebElement selectMyElement = driver.findElement(this.getObject(By.Id("Id of Your DropDown"))); 
selectMyElement.click();

Actions keyDown = new Actions(driver);
keyDown.sendKeys(Keys.chord(Keys.DOWN, Keys.DOWN)).perform();

以上为我工作