0

所以我试图访问一个文本框,以便将该框从默认的“选择客户”更改为“PE”。我的问题是元素被 Htmlunit 识别为 HtmlTextInput 而不是 HtmlSelection。我了解到它运行道场,这使事情变得有点复杂。

这是我试图操纵的代码片段。

<form action="#" method="GET">
<span class="headlines">Customer:</span>
<select id="orgSelect"
name="orgSelect"
dojoType="dijit.form.FilteringSelect"
labelType="text"
    style="width: 150px;visibility:hidden"
autoComplete="true"

<option value="__select__" selected>Select Customer</option>
<option value="-1">**All Customers**</option>

<option value="2396-1986">PCLP</option>

<option value="3-1987">PE</option>

<option value="8262-1988">PEA</option>

我的代码是

List <HtmlForm> f= page.getForms();
HtmlTextInput ba = f.get(0).getInputByName("orgSelect");
ba.setValueAttribute("PE");

这是文本版本的外观。

客户:选择客户PE

?

报告类别:选择报告类别_选择_

4

1 回答 1

0

您不能直接设置 HtmlSelect。

您只需要在选择中“选择”好的选项。

例如:

    HtmlSelect select = page.getHtmlElementById("myId");
for (HtmlOption o : select.getOptions()) {
    if (o.getValueAttribute().contains("myValue")) { 
        select.setSelectedAttribute(o, true);
    }
}
于 2012-05-02T15:00:13.857 回答