自动 - IE根据文本单击一个按钮。

时间:2014-05-28 20:08:46

标签: autoit

我在表单上有一个按钮,我需要点击它,它看起来像这样

<button id="****" class="****">Click Me</button>

我使用以下代码点击其他工作正常的按钮,但这是因为其他按钮分配了value="*****"

$oButtons = _IETagnameGetCollection($oIE, "button")
For $oButton in $oButtons
    If String($oButton.value) = "Click Me" Then
       _IEAction($oButton, "click")
    EndIf
Next

我知道$oButton.value是获得按钮价值的因素,但其他&#34;运营商&#34;是否有value可以获得按钮的锚文本?

1 个答案:

答案 0 :(得分:5)

您发布的示例只能在您没有该元素ID的情况下使用。 ID始终是唯一的。

如果您要点击的按钮有ID,您可以将其用作该按钮的参考。

示例:

HTML:

<button id="MyButton" class="someClass">Click Me</button>

CODE:

$oBtn = _IEGetObjById($oIE, "MyButton")
_IEAction($oBtn, "click")

除了.Value,您可以使用以下所有内容:

$oBtn.innerText
$oBtn.outerText
$oBtn.innerHtml
$oBtn.outerHtml
$oBtn.classname
$oBtn.id
$oBtn.name
$oBtn.href
$oBtn.src

$oBtn.click
$oBtn.focus
...

请注意,您可以使用$ oBtn.value来读取或写入html元素的“Value”属性,但是对于例如。 “itemProp”属性$ oBtn.itemProp不起作用

示例:

HTML:

<button id="MyButton" class="someClass" itemprop="streetAddressSubmit" >Click Me</button>

这不起作用:

$ItempropValue = $oBtn.itemprop

这是应该做的:

$ItempropValue = $oBtn.getAttributeNode ('itemprop').NodeValue