如何通过vba验证网站上的操作?

时间:2017-09-15 14:32:53

标签: html vba validation internet-explorer

为了在网站上标记一个复选框,我让vba在ie中打开网站。然而,即使复选框显示为已标记,我也注意到,当我让VBA执行此操作并且手动单击自己时,元素的<div class="stars"> <form action=""> <input class="star star-5" id="star-5" type="radio" name="star"/> <label class="star star-5" for="star-5"></label> <input class="star star-4" id="star-4" type="radio" name="star"/> <label class="star star-4" for="star-4"></label> <input class="star star-3" id="star-3" type="radio" name="star"/> <label class="star star-3" for="star-3"></label> <input class="star star-2" id="star-2" type="radio" name="star"/> <label class="star star-2" for="star-2"></label> <input class="star star-1" id="star-1" type="radio" name="star"/> <label class="star star-1" for="star-1"></label> </form> </div>更改为&#34;脏...&#34;而不是&#34; pristine ..&#34;点击后。

没有改变&#34;脏......&#34;并且触及,网站没有按实际执行的方式注册该操作。

所以我试着设置&#34;脏...&#34;的属性。要检查的类,但它没有按行为注册动作,所以我想比较&#34;脏的所有属性。&#34;和&#34; pristine ..&#34; class,看看我是否可以通过更改使其变脏所需的所有表达式来执行注册操作。

因此,我在手动用户点击之前和之后对元素代码进行了手动比较,它位于下面的vba代码中作为第一个注释。

class

1 个答案:

答案 0 :(得分:0)

对于那些绊倒同样问题的人来说,这就是诀窍:

'1. Mark checkbox
    'MsgBox ("engage filling")
    Set elements1e = ie.document.getElementById("permission")
    'MsgBox (elements1e.Name & " " & elements1e.className & elements1e.placeholder)
    elements1e.Focus
    elements1e.Click
'    MsgBox ("cLICKED")

我不确定为什么.focus.click可以使用此元素,而不是其他元素。我认为它与网站本身的html代码中的对象类型有关。