Watin не может выбрать опцию из списка выбора - PullRequest
1 голос
/ 26 августа 2011

Я использую WATIN для заполнения динамически созданной формы, которая может содержать несколько списков выбора (это списки выбора, управляемые javascript). Пример выведенного формата списка выбора:

<select title=" " style="width: 300px;" 
    name="NameHere" 
    data-bind="value: NameHere.AnswerCode"
    class="fieldInputElement pickList">
    <option selected="" value=""></option>
    <option class="answerTextWithNote" value="A">alpha</option>
    <option class="answerTextWithNote" value="B" data-guidance="E.g. minor ">bravo</option>
    <option class="answerTextWithNote" value="C" data-guidance="E.g. b">charlie</option>
    <option class="answerTextWithNote" value="C" data-guidance="E.g. c">chatlie</option>
</select>

К сожалению, watin, похоже, не может выбрать список и любые параметры, возвращая ошибку.

код

window.SelectList(Find.ByName("NameHere")).Options[2].Select();

Возвращает ошибку об индексе, хотя

string y = window.SelectList(Find.ByName("NameHere")).Option(x[1].ToString()).ToString();

назначит правильное значение для индексированной опции.

Может кто-нибудь посоветовать мне, как активировать селектор, так как я пробовал фокусировать () и нажимать клавишу все без радости.

В списке выбора используется плагин Chosen, если это поможет?

1 Ответ

1 голос
/ 26 августа 2011

Это немного не красиво ... но ... это работает.

Использование

Мне не удалось воспроизвести вашу ошибку индекса;Я могу получить доступ к опциям SelectList по индексу без проблем (см. Код ниже).НО ... доступ к ним не помог, так как у Chosen есть своя собственная разметка презентации.

Итак, вместо этого я работал с элементами Chosen HTML вместо SelectList, и все работает лучше.*

Поиск по классу был выполнен при изменении идентификаторов элементов управления на странице примера.WaitUntilExists устранил периодические сбои.

...