我正在尝试使用vba从下拉框中选择值,下拉框的代码块如下
TransformViewModel
如果PositionValueChangedCommand
的值是静态的,我会使用<input type="text" id="form_autocomplete_input-1542902425322" list="form_autocomplete_suggestions-1542902425322" placeholder="Search keyword or select filter" role="combobox" aria-expanded="false" autocomplete="off" autocorrect="off" autocapitalize="off" aria-autocomplete="list" aria-owns="form_autocomplete_suggestions-1542902425322 form_autocomplete_selection-1542902425322">
,但这似乎是随机生成的数值。
我已经看过了,看来我不能简单地添加通配符,例如form_autocomplete_suggestions-1542902425322
并且由于它是随机生成的,并且数量如此之长,因此无法遍历值数组。所以我不确定如何解决这个问题。
答案 0 :(得分:1)
您可以使用^
运算符使用css属性等于值选择器语法来说从某个子字符串开始。您也可以改用*
,即包含。
[id^='form_autocomplete_input-']
VBA:
ie.document.querySelector("[id^='form_autocomplete_input-']")
您还可以使用:
[placeholder='Search keyword or select filter']
将会是:
ie.document.querySelector("[placeholder='Search keyword or select filter']")
当您指出需要选择此选项时,您可能需要:
ie.document.querySelector("[id^='form_autocomplete_input-']").Selected = True
参考: