выберите раскрывающуюся html-страницу - PullRequest
0 голосов
/ 24 февраля 2019

У меня есть две три выпадающих на веб-странице.Вручную При выборе первого раскрывающегося списка как «Нет» два других автоматически показывают ноль в нем.При нажатии Enter он перемещается на следующую HTML-страницу.Однако я могу выбрать значения во всех трех выпадающих списках, используя vba, но при нажатии введите два раскрывающихся списка снова, чтобы отобразить «Выбрать» вместо 0 и не перейти на следующую страницу.

Я пытался для каждого цикла кака также getElementByID

при нажатии Введите веб-страницы должны перейти на другую страницу.

<select name="UnhedgedYes" id="DDLLUnhedgedYes" style="font-size: 12px;"><option value="Yes">Yes</option>
<option value="No">No</option>
</select>
 <span class="field-validation-valid" data-valmsg-replace="true" data-valmsg-for="UnhedgedYes"></span>




 <select name="DDLIPRUFCE" class="DDLIPRUFCE" id="DDLIPRUFCE" style="font-size: 12px;" data-val-required="Please Select Incremental Provisioning Requirement-due to UFCE" data-val="true" data-val-number="The field DDLIPRUFCE must be a number."><option value="">[Select]</option>
<option value="1" text="0">0</option><option value="6" text="10">10</option>
 <span class="field-validation-valid" data-valmsg-replace="true" data-valmsg-for="DDLIPRUFCE"></span>
 <input name="hidDDLIPRUFCE" id="hidDDLIPRUFCE" type="hidden" value="" autocomplete="off" data-val-required="The hidDDLIPRUFCE field is required." data-val="true" data-val-number="The field hidDDLIPRUFCE must be a number.">




<select name="DDLIRiskW" class="DDLIRiskW" id="DDLIRiskW" style="font-size: 12px;" data-val-required="Please Select Incremental Risk Weight- due to UFCE" data-val="true" data-val-number="The field DDLIRiskW must be a number."><option value="">[Select]</option>
<option value="2" text="0">0</option><option value="1" text="25">25</option></select>
                                            
 <span class="field-validation-valid" data-valmsg-replace="true" data-valmsg-for="DDLIRiskW"></span>
 <input name="hidDDLIRiskW" id="hidDDLIRiskW" type="hidden" value="" autocomplete="off" data-val-required="The hidDDLIRiskW field is required." data-val="true" data-val-number="The field hidDDLIRiskW must be a number.">

Ниже приведены коды, которые я пробовал, но они не работают.

1

ie.document.querySelector("option[value=No]").Selected = True

2

Set oSelect = ie.document.getElementById("DDLLUnhedgedYes")
oSelect.selectedIndex = 1
oSelect.FireEvent "onchange" ' although there is no fireevent exist on this element.

3

For Each op In ie.document.querySelectorAll("option")
    If op.innerText = 0 Then
        op.Selected = True
        t = t + 1
        If t = 2 Then
            Exit For
        End If
    End If
Next

4 Этот код будет вводить Нет в первом раскрывающемся списке и 0 в двух других отключит другие два раскрывающихся списка.Но при нажатии Enter остается на той же странице, вместо этого показывает [Выбрать] в двух других выпадающих списках

Set Post = ie.document.getElementById("DDLLUnhedgedYes")
''I didn't use any index to do the job

For Each elem In Post.getElementsByTagName("option")
    If InStr(elem.Value, "No") > 0 Then
         elem.Selected = True
         ie.document.getElementById("DDLIPRUFCE").getElementsByTagName("option")(1).Selected = True: ie.document.getElementById("DDLIPRUFCE").FireEvent ("onchange")
         ie.document.getElementById("DDLIPRUFCE").disabled = True
         ie.document.getElementById("DDLIRiskW").getElementsByTagName("option")(1).Selected = True: ie.document.getElementById("DDLIRiskW").FireEvent ("onchange")
        ie.document.getElementById("DDLIRiskW").disabled = True
        Exit For
    End If
Next elem

ie.document.getElementById("btnEnter").Click
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...