Я новый в VBA DOM, и я пытаюсь выбрать конкретную опцию на веб-странице. К сожалению, этот параметр имеет идентификационное имя, которое совпадает с другим вариантом на странице, за исключением значения внутренней функции. здесь веб-код:Изменить значение в опции onlick web page с помощью vba (IE 11)
<table class="stati_check" id="ctl00_NetSiuCPH_ctl25">
<tr>
<td>
<span class="check">
<INPUT onclick="if (!boxWorkflow_rbSelect(this)) return;setTimeout('__doPostBack(\'ctl00$NetSiuCPH$ctl25$ctl00$WorkflowState\',\'\')', 0)" tabIndex=0
id=ctl00_NetSiuCPH_ctl25_ctl00_WorkflowState type=radio
value=ONVALIDAPROOF name=ctl00$NetSiuCPH$ctl25$ctl00$WorkflowState>
</span>
<td>
<span class="check">
<INPUT onclick="if (!boxWorkflow_rbSelect(this)) return;setTimeout('__doPostBack(\'ctl00$NetSiuCPH$ctl25$ctl01$WorkflowState\',\'\')', 0)" tabIndex=0
id=ctl00_NetSiuCPH_ctl25_ctl01_WorkflowState type=radio
value=ONANNULA1 name=ctl00$NetSiuCPH$ctl25$ctl01$WorkflowState>
</span>
</td>
</tr>
</table>
Как можно видеть два ID те же так, когда я запускаю строку кода VBA:
Set pdr_button = ie.Document.getElementById("ctl00_NetSiuCPH_ctl25_ctl00_WorkflowState").click
Он будет выбран только первый вариант, но я Я пытаюсь выбрать те, которые имеют значение «ONANNULA1». Я попытался с REMOVE/setatribute:
Set Annulla_Button = ie.Document.getElementById("ctl00_NetSiuCPH_ctl25_ctl00_WorkflowState")
Annulla_Button.removeAttribute ("value")
Annulla_Button.setAttribute ("value"), "ONANNULLA1"
Annulla_Button.Click
Однако результат в том, что ничего не будет выбран.
Может кто-нибудь мне помочь. заранее спасибо за терпение вам
вы попробуйте: Set Annulla_Button = ie.Document.getElementById ("ctl00_NetSiuCPH_ctl25_ctl00_WorkflowState") (1) – h2so4
@ h2so4 - getElementById не возвращает набор элементов, он возвращает один элемент. –
Сначала попробуйте выбрать таблицу, а затем верните все теги ввода в таблице и проверьте значение. Например. 'set elements = ie.document.getelementByID (" ctl00_NetSiuCPH_ctl25 "). getElementsByTagName (" input ")' затем повторяет сборку элементов, чтобы найти, когда это значение является тем, что вы хотите. –